2.5.4、Google Analytics高級應用——API的使用


GA非常強大,但是免費版的有諸多的限制,如:GA里面最多能導出的記錄是5000,如果要做細致,個性化的分析,無疑是需要用到API,免費版GA通過API最多可以拿100萬條記錄,付費版本GA360通過API最高是300W,但付費版本可以跟BigQuery關聯起來,將GA賬戶里的數據導入進去,所以是可以獲取到所有的原始記錄的。

Google官方提供了多種API接口給用戶,下圖是整體數據邏輯結構如圖2-88所示:

 

圖2-88 GA整體數據邏輯結構

 

 

左側是收集數據模塊,收集用戶互動的相關數據,可以看到經典版的ga.js只直接記錄為Logs的行為,而統一版analytics.js則采用跟移動應用一致的方式,通過測量協議去手機數據。

中間上方是配置,可以管理數據的處理方式。

中間下方是數據處理,這個是Google分析的后台數據處理的,黑匣子來的。

右側就提供的報告或接口,是處理后的數據。

獲取API授權的原理:在GoogleAPI后台創建一個服務器ID,然后給該ID在GA的賬戶級別的用戶管理里面授予分析的權限,然后在API創建OAuth 2.0型的ID和秘鑰,這個就是放在程序里面的。

下面來介紹如何通過R和Python來連接GA的API來獲取數據,首先介紹R的。

1.R

用R來獲取GA的數據需要用RGoogle Anlytics,自行下載這個包,用這個包的好處是,該作者已經將分頁查詢的功能內置進去了,所以能夠獲得准確的數據。具體設置過程如:

1、GoogleAPI管理里創建服務賬號密鑰,

訪問谷歌開發者后台,進入后先創建一個項目,然后選擇“憑據”→“創建憑據”→“服務賬號密鑰”,如圖2-89所示:

 

圖2-89 創建服務賬號密鑰

 

創建后會有個服務器賬號ID,如圖2-90所示:

 

圖2-90 服務器賬號ID

 

 

2、在GA 賬戶級別的給這個服務器賬號ID授權,權限級別是“閱讀和分析”的即可,如圖2-91所示:

 

圖2-91 給服務器賬號ID授權

 

 

3、然后返回到Google APIs管理界面,創建 OAuth 2.0授權,如圖2-92所示,一般選擇的應用類型是Web,如果不知道就選擇其他,這個是通用型的:

 

圖2-92 創建OAuthor客戶授權

 

 

4、創建后會看到圖2-93所示,客戶端ID就是后面需要用到的了。

 

圖2-93 生成秘鑰

 

 

5、然后在R上,將客戶端ID和密鑰填入對應的位置,如圖2-94所示詳細的代碼去GA小站官網獲取。

 

圖2-94 R程序提取GA獲取

 

 

如果沒有的包,自行下載。包RGoogleAnalytics是已經將分頁查詢的功能內置,所以通過這個查詢出來的數據都是盡可能不抽樣。上述代碼中的table.id就是數據視圖ID,下面試運行下如圖2-95所示:

 

圖2-95 R程序運行

 

 

可以看到數據已經導出來了。

2.Python

這一節介紹如何用Python連接Google Anlaytics API去獲取數據,前面大部分跟R的相同,不同的地方在於Python是引入json的密鑰文件,而不是直接用服務端ID和密鑰。

1、假設您已經創建好了OAuth2.0客戶端ID,然后將其以json格式下載,如圖2-96所示:

 

圖2-96 導出秘鑰

 

 

可以看到有個json文件,如圖2-97所示:

 

圖2-97 json文件格式的秘鑰

 

 

2、然后將谷歌分析官方將那段實例代碼復制帶本地保存,並將前面下載的json秘鑰與那段代碼擋在同一個路徑中,然后代碼找到key_file_location,將其改為json文件的名稱,如圖2-98所示:

 

圖2-98 配置秘鑰

 

 

然后試運行下看有沒報錯,如果沒報錯,會返回一些數據,那就表示成功了。

3、接下來新建另一個py文件,引入上面的示例代碼,代碼中的第一段就是引入該示例代碼,然后初始化,這里的profile_id就是GA的數據視圖ID,如圖2-99所示:

 

圖2-99 新建代碼示例

 

 

然后運行下,如圖2-100,這段代碼的的意思是獲取2016年7月1號開始到2016年8月10號用桌面端訪問過/my/p_login.php,每天的用戶數是多少,並且按日期排序:

 

圖2-100 運行結果示例

 

 

數據就提取出來了。可以看到,在通過API獲取的數據的過程中最關鍵的還是ga().get的函數配置,而配置的模式跟前面Google Sheet類似的,特別是過濾器的使用是一致。API返回的數據都是字典結構,ga().get()返回有以下數據:

3.API V4

在2017年7月的時候,GA發布了新一版的API,Version4的,授權的方式上沒有改變,但是界面的UI有了變化,更重要的是查詢的核心函數變成了batchGet。

下面看看設置授權的流程:

1、進入谷歌雲平台控制后台創建一個項目。

2、然后單擊“IAM和管理”→“賬號服務”,創建一個服務賬號,賬號的格式會是*****@的格式,然后在GA中給這個授予“讀取和分析”的權限。

3、創建和下載密鑰

單擊服務賬號右側的那個三個點后選擇“創建密鑰”,如圖2-101所示:

 

圖2-101 創建秘鑰

 

 

然后選擇p12的格式下載。

4、將官方的案例代碼復制到您的編輯器去,然后更改密鑰路徑已經設置相關的視圖ID后試運行,如圖2-102所示:

 

圖2-102 試運行結果

 

 

運行沒有報錯,獲得返回的數據,API獲得授權取得數據。仔細看上圖的代碼,這里獲取數據使用的核心函數是batchGet,前面v3版本的使用的是ga().get()函數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM