私が管理してるブログで公開させてもらった、Google AnalyticsのAPIを使ったデータ取得ツール。
⇒データ取得ツール
たいしたソースコードではないが、ここで公開させてもらおうと思う。
ツール自体は公開してるので自由に使ってもらって良い。セキュリティ面で甘い箇所があるので、怖くて使えないという方は、このソースコードを見てもらい、実際に中でどんな処理を行っているかを確認した上で使ってもらうか(…これも結局、「ほんとにこのソースを使っているのか?」と疑われてしまえば証明の手段は無いので、信頼してもらうしかないが。。)、あるいは独自でサーバにアプリを実装して使ってもらえればと思う。
ツールで使ってる技術は以下の通り。
・Perl(CGI)
・XML(XML::LibXML)
・XSLT(XML::LibXSLT)
・HTML Template(HTML::Template)
この中でメインの処理を行っている「ga_api_get.cgi」を公開する。
(ソースコードはコチラから取得して下さい)
大きく分けて3つの処理を行っている。
パラメータの送受信やエラー処理などを省くと、以下の3つ。
①Google Analtycis API 接続
②XML外部出力
③XSLファイル作成
そして、①のGoogle Analytics API接続はさらに以下3つのSTEPで分けている。
STEP1:authentication(認証)
STEP2:Account用Query作成&実行
STEP3:Profileセット
このSTEPは、こちらのGoogle Analytics APIの解説ページに沿っている。
このCGIではAPIに接続してGoogleからXMLファイルを取得し、そのXMLに沿ったXSLファイルを作成するところで終わっている。
このCGI以外に、作成したXSLファイルを元にTSVデータへ変換してダウンロード取得するCGI「trans_xml.cgi」もあるが、こちらはたいした処理を行ってないので解析は省くことにする。
(ソースコードはコチラから取得できます。)。
あとはView部分のTempleteファイルのみ。
XMLファイルとXSLファイルはID名毎に分けて出力、結構重たいデータなので、1日1回cronでファイルを自動削除する仕掛けにしている。
久しぶりに組んだPGなので、エラー処理とかも含め、かなりいい加減で穴だらけなのだが、指摘は大歓迎。
改善点なども意見もらえると助かります。
また、dimensionとmetricの有効な組み合わせ方法とかも、今後サイトに掲載しようと思ってるので、実際にツール使ってみて良い組み合わせ見つけたら、教えてもらえると嬉しいです。
【関連サイト】
□Google AnalyticsのAPIツールを公開します。
□Google Analytics API データ取得ツール