Google Web Master Tools APIを使ったCSVのダウンロード
CSVのダウンロードを自動化したい
毎回Web Master Toolsにアクセスして日付設定してCSVを選択してダウンロードなんて非効率ですよね。今回はPython(始めて使うけど)でWeb Master Tools APIを使ったCSVのダウンロードを試して見ました。参考にしたのはDownload search queries data using Pythonの記事です。ただ、このサンプルでは日付指定ができないので、日付指定の方法がわかったらあらためて紹介します。
必要な環境とライブラリ
- Pythonが動く環境(MacOSなら最初から入っています)
- Google Data APIs Python Client Library
MacであればすでにPythonがインストールされているので、Google Data APIs Python Client Libraryをインストールするだけです。
Google Data APIs Python Client Libraryのインストール
こちらからgdata-2.0.17.zipをダウンロードします。ダウンロードしたらTerminalから解凍したディレクトリにアクセスし、setup.py
を実行します。
sudo python setup.py install
Password:
/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'install_requires'
warnings.warn(msg)
running install
running build
running build_py
creating build
...
byte-compiling /usr/local/lib/python2.7/site-packages/gdata/youtube/data.py to data.pyc
byte-compiling /usr/local/lib/python2.7/site-packages/gdata/youtube/service.py to service.pyc
running install_egg_info
Writing /usr/local/lib/python2.7/site-packages/gdata-2.0.17-py2.7.egg-info
downloaderを作る
次に、downloader用のプロジェクトディレクトリを作ります。名前は何でも構いません。
$ mkdir hogehoge
$ cd hogehoge
downloader.pyを作る
サンプルwebmaster-tools-downloads/downloader.pyの通りにdownloader.py
を作ります。ソースはそのままコピペでOK。
$ vi downloader.py
example-simple-download.pyを作る
次にダウンロードを実行するためのPythonファイルwebmaster-tools-downloads/example-simple-download.pyを作ります。このファイルにはGoogleアカウントの情報と対象のサイトURLを入力します。
$ vi example-simple-download.py
# Email address and password used to sign-in to Webmaster Tools
email = 'user@example.com'
password = '********'
# Specify the website and the type of data to download
website = 'http://www.example.com/'
selected_downloads = ['TOP_QUERIES']
email
, password
, website
の内容を自身のアカウントと管理しているWebサイトのURLに書き換えます。
コマンドをたたいてCSVファイルをダウンロードしてみる
コマンドをたたいてCSVがダウンロードされるか試して見ます。特に問題がなければそのまま終了します。 同じ階層にダウンロードされたCSVファイルが保存されているはずです。
$ python example-simple-download.py
保存されたファイル
ファイル名が長いですが、前日から過去1ヶ月分保存のデータが保存されます。
whiskers-nukos-kitchen_20150106T051650Z_TopSearchQueries_20141206-20150105.csv
日付指定できるようになればCSVデータの保存を自動化できそうです。昨日紹介したUnixのcatコマンドでCSVファイルを結合するも合わせて行えばかなり手間を省けそうです。日付指定の方法がわかったらまた紹介したいと思います。