Python

Pythonを使ってGoogle search console(サーチコンソール)のAPIを叩いてみた!

PC
記事内に商品プロモーションを含む場合があります

ウマたん
ウマたん
当サイト【スタビジ】の本記事では、Pythonを使ってGoogle search console(サーチコンソール)のAPIを利用してみます。PythonはAPIを利用するのに非常に便利です。Googleプロダクトは各種APIを提供していてAPIを使うことで様々なことができるので試してみましょう!

こんにちは! データサイエンティストのウマたん(@statistics1012)です!

マーケターであれ、ブロガーであれ、個人であれ、法人であれ、SEOに携わる人なら必ず利用する「Google search console

Google search console

Googleの提供する無料ツールであり、検索順位や流入キーワードを測るのに非常に有用なツールです。

この度、Google search consoleの検索キーワードを定点観測SEOツールに登録する際、管理画面上では1000キーワードまでしか出力できないことに気付きまして・・・

PythonでGoogle search consoleのAPIを叩き5000行出力することに挑戦してみたのでまとめておきます!

ロボたん
ロボたん
APIを叩けば出力件数を増やすことが可能なのかー!!

ウマたん
ウマたん
そうなんだよー!そんなに手順も難しくないから出来るようにしておくと便利だよ!

ウマたん
ウマたん
Pythonの勉強は以下の記事をチェック!

PythonでGoogle search consoleのAPIを利用する手順

Pythonに移る前にいくつかの手順が必要になります。

実装にあたって、以下の記事を参考にさせてもらいました。

少し面倒かもしれませんが、順番に見ていきましょう!

Step1:Google Cloud Platformで プロジェクトを作成する

まず、GoogleプロダクトのAPIを利用するためにはGoogle Cloud Platformへの登録が必要になります。

Googleアカウントさえ持っていれば無料で利用できますので以下のURLからGoogle Cloud Platformのプロジェクトを作成しましょう!

Google Cloud Platformで プロジェクトを作成する

Google search console

Step2:Google search consoleの APIを登録する

Google Cloud Platformでプロジェクトが作成できたら、次はGoogle search consoleのAPIを登録していきます。

以下のURLからGoogle search consoleのAPIを登録していきましょう!

Google search consoleの APIを登録する

先ほど作成したプロジェクトを指定してGoogle search consoleのAPIを登録していきましょう!

この時、認証を続ける画面が出ますが一旦進まなくて大丈夫です。

Step3:サービスアカウントを作成

続いてプロジェクトの中でサービスアカウントを作成していきます。

Google search console

以下のURLからプロジェクトに紐づくサービスアカウントを作成してください。

サービスアカウントを作成する

Step4:キーを作成し、JSONファイルをダウンロード

この時キーを作成するボタンがあるのでそこから秘密鍵を作成しましょう!

Google search console

この時JSONファイルでダウンロードするようにします。

Step5:Google search consoleの管理画面上でユーザーの追加

最後にGoogle search consoleの管理画面上に、先ほど設定したサービスアカウントのメアドを登録していきます。

設定>ユーザーと権限>ユーザーを追加

でサービスアカウントに表示されているメアドを追加しましょう!

これで前準備が終了です!続いては実際にPythonを動かしていきます!

Pythonを使ってAPIを叩く方法

PC

先ほどダウンロードしたJSONファイルをPythonファイルと同じディレクトリに移動します。

Pythonを実行する前にpip installしていきます。

pip install --upgrade google-api-python-client
pip install oauth2client

その後で以下のコードをPythonで実行しましょう!

これによりクエリと流入ページ別の流入数が出力されます。

ちなみに公式リファレンスは以下です。

具体的にどんな意味があるのか見ていきましょう!

dimensions = ['query', 'page']
startDate = '2019-10-01'
endDate = '2019-11-01'
rowLimit = 5000

body = {
    'startDate': startDate,
    'endDate': endDate,
    'dimensions': dimensions,
    'rowLimit': rowLimit
}

こちらのコードで引っ張ってくる変数と期間・行数を出力できます。クエリは5000行までしか出力できません。

for i, d in enumerate(dimensions):
    df[d] = df['keys'].apply(lambda x: x[i])

df.drop(columns='keys', inplace=True)
df.to_csv('{}.csv'.format(start_date), index=False)

QueryとPageがリストに入って出力されるのでそれを別々のカラムに分けてCSVで出力する処理を行っています。

Pythonを使ってGoogle search consoleのAPIを叩く方法 まとめ

実際にやってみると意外と簡単!

それほど時間もかからず行うことが出来ました。

ロボたん
ロボたん
確かにこれなら結構簡単に出来そうだー!

ウマたん
ウマたん
Google search consoleで大量にキーワード等を出力したい時は試してみてね!

ちなみにPythonを学習する方法や他のAPI利用方法については以下の記事でまとめていますのでよければ見てみてください!

もしより深くPythonでできることについて学びたいという方は、Pythonを使ってAPIを利用しながら色々できることを試してみる以下の講座をUdemyで公開しているのでぜひチェックしてみてください!

【実践】ビジネスケースとつなげてPythonで出来ること5つを学べる3日間集中コース

Udemy python
【オススメ度】
【講師】僕!
【時間】3.5時間
【レベル】初級~中級

手前味噌ですが、まずPythonについて理解してみるのにオススメなコースを僕自身が出しています!

Pythonで出来ることのうち以下の5つを網羅して学んでいきます。

データ集計・加工・描画と機械学習モデル構築に関してはKaggleというデータ分析コンペティションのWalmartの小売データを扱いながら学んでいきます。

WebスクレイピングとAPI利用とWebアプリケーション開発に関しては、楽天の在庫情報を取得してSlackに自動で通知するWebアプリケーションを作成して学んでいきます。

Pythonで何ができるのか知りたい!という方には一番はじめにまず受けていただきたいコースです!

ウマたん
ウマたん
僕のTwitter(@statistics1012)にメンションを飛ばしてクーポンが欲しいとつぶやいてくれたら2000円以下になる講師クーポンを発行するよ!

\30日以内なら返金無料/このコースを見てみる
スタビジアカデミーでデータサイエンスをさらに深く学ぼう!

スタアカサービスバナースタビジのコンテンツをさらに深堀りしたコンテンツが動画と一緒に学べるスクールです。

プレミアムプランでは私がマンツーマンで伴走させていただきます!ご受講お待ちしております!

スタビジアカデミーはこちら