とある仕事でページビューに基づくランキングを作る必要があって実装方法を調査していたところ、Google Analytics のデータアクセス用のAPIがあったことを思いだし、実装してみた記録。 正直、直前までログファイルを自前で集計する方法しか考えてなかったけど、この方法を思いついて面倒な集計の手間がなくなって助かった。 手順としては、まず認証を行い、認証トークンを利用してデータ取得する流れ。認証についてはいくつか選択肢があるが今回は ClientLogin を利用(ソース中のget_auth)。認証トークンが正常に取得できたら後は Data Export API をコール(ソース中のget_ranking)すればXML形式で返答があるので、必要なデータのみ取り出して HTML として出力して終了。 結果は以下の通り。 Perlでの実装は以下のとおり。ちょっと冗長な気がするが、まいっか。
![Google Analytics Data Export API でランキング生成 – klog](https://cdn-ak-scissors.b.st-hatena.com/image/square/9a485045adcb5f9798227f8ef73b38448e07f85a/height=288;version=1;width=512/http%3A%2F%2F5net.com%2Fblog%2Fassets_c%2F2012%2F12%2Fme-thumb-320x320-9962.jpg)