Googleウェブマスターツールのレポートを定点観測したい
Googleウェブマスターツールが提供してくれる情報を、いちいち管理ツールにログインすることなく、定期的に自動取得したいのでPerlでこんなコードを書いてテストしてみた。
詳細ページの表示は問題なし。CSVのデータもダウンロードできそうだ。
TODO:
Plaggerのプラグインにして、メール送信はP::P::P::Gmailとかで送るようにする。
→ ウォッチ対象のURLと、レポートの送り先をPlaggerの設定ファイル(.yaml)で管理するようにしたい
プラグインにするベースは AmazonAssociateReportJP.pm あたりを参考にすれば案外簡単にできそうだ。
Yahoo!サイトエクスプローラーのデータも自動取得するものも作らないと。
#!/usr/bin/env perl use strict; use WWW::Mechanize; use Data::Dumper; use FileHandle; use Net::SMTP::OneLiner; $Data::Dumper::Indent = 1; my $url = 'https://www.google.com/accounts/ServiceLogin?service=sitemaps&passive=true&nui=1&continue=https%3A%2F%2Fwww.google.com%2Fwebmasters%2Ftools%2F&followup=https%3A%2F%2Fwww.google.com%2Fwebmasters%2Ftools%2F&hl=ja'; my $user_id = 'MY_GOOGLE_ACCOUNT'; my $user_password = 'PASSWORD'; sub message { print @_; } sub abort { &message(@_); exit 8; } # get top page my $mech = WWW::Mechanize->new(); $mech->agent_alias( 'Mac Mozilla' ); my $response = $mech->get($url); &abort(Dumper($response)) unless ($mech->success); #login $mech->form_number(1); $mech->set_fields('Email' => $user_id, 'Passwd' => $user_password); $response = $mech->submit; &abort(Dumper($response)) unless ($mech->success); # move to the page $response = $mech->follow_link(text => 'blog.somethingnew2.com'); &abort(Dumper($response)) unless ($mech->success); # move to detail page $response = $mech->follow_link(url_regex => qr/top-search-queries/i); &abort(Dumper($response)) unless ($mech->success); # get top-search-queries-csv $response = $mech->follow_link(url_regex => qr/top-search-queries-dl/i); &abort(Dumper($response)) unless ($mech->success); print ("$response\n");
詳細ページの表示は問題なし。CSVのデータもダウンロードできそうだ。
TODO:
Plaggerのプラグインにして、メール送信はP::P::P::Gmailとかで送るようにする。
→ ウォッチ対象のURLと、レポートの送り先をPlaggerの設定ファイル(.yaml)で管理するようにしたい
プラグインにするベースは AmazonAssociateReportJP.pm あたりを参考にすれば案外簡単にできそうだ。
Yahoo!サイトエクスプローラーのデータも自動取得するものも作らないと。
コメント