作業を簡略化させるためにGoogleスプレッドシートからGoogle Apps Scriptを使ってGAから数字を取得するものを使っていたけど、なぜか動かなくなったので適当にネットを見ながら新しく書き直したのでポイントだけメモ
※なぜ動かなくなったのかは調べない…
※手抜きなメモなので細かくはメモらない。それぞれキーワードでググった方が親切なのたくさん出てくるし…
準備
- スプレッドシートを作って[ ツール - スクリプト エディタ... ]
- スクリプトエディタの[ リソース - Google API を使用... ]
- "Google Analytics API"をONにする。プルダウンは"v3"のまま
- "API キー"は"Google API コンソール"にアクセス、左メニューの"API Access"にアクセスして"Simple API Access"の"API key"の値をコピペ
データの取得
"Analytics.Data.Ga.get"に以下の引数を渡すとデータが帰ってきた
var ret = Analytics.Data.Ga.get( tableId , '開始日' , '終了日' , 'メトリックス達' , {その他オプション達} );tableIDにはGAにアクセスした時のURLにあるp99999999のp以降の数字を"ga:"の後ろに付けた文字列。
メトリックス達は、カンマ区切りで複数が指定可能。
その他オプション達には以下のようなものが設定できるらしい。
{ 'dimensions': 'ディメンジョン達' , 'sort': 'ソートに使うメトリックス達' , 'segment', 'セグメントさん' , 'filters', 'フィルターさん' , 'start-index', '1行目にするデータの行番号' , 'max-results', '最大件数' }ディメンジョン達やソートに使うメトリックス達はカンマ区切りで複数が指定可能。
自分が使ったのは、メトリックスに"ga:visits"、ディメンジョンに"ga:browser"、ソートはga:visitsを降順で欲しかったから"-ga:visits"。
データの利用
上記で取得してきたデータは以下のような感じで利用できた
// ga:visitsの総数 var total_visits = ret.getTotalsForAllResults()[ 'ga:visits' ]; // ga:browserを配列として取得 var ret_rows = ret.getRows(); // ループして処理 for( var i = 0, m = ret_rows.length; i < m; i++ ){ // ga:browser Logger.log( rows[ i ][ 0 ] ); // ga:visits Logger.log( rows[ i ][ 1 ] ): }
メトリックス達とかディメンジョン達については以下を参照。
Dimensions & Metrics Reference
その他詳しい情報は、適当に調べて。。。
0 件のコメント:
コメントを投稿