はじめに
ブログや Web サイトを運営していると、Google Search Consoleで
検索パフォーマンスを確認する作業が日常的に発生します。
その中で、特に以下のような課題を抱えている方も多いのではないでしょうか。
- 複数のURLの検索クエリーを一括で確認したい
- 定期的なパフォーマンスレポートを自動化したい
- データを Excel などで分析しやすい形式で出力したい
Google Search Console API を利用することで、これらの課題を解決できます。

カスタマイズやデータの分析が困難(自分に合わない)だったりします。
あわせて読みたい
-
-
Google Search Consoleのページとクエリ分析でリライト候補を自動選定する方法
続きを見る
この記事で分かること
- Google Search Console API へのアクセス環境を構築する方法
- Python からデータを取得するための認証設定
- API を利用するためのプロジェクト・サービスアカウント作成手順
特に本記事では、Google Cloud Platform(GCP)での初期設定に焦点を当てて解説します。
API の利用には少し複雑な設定が必要ですが、一度設定してしまえば、
その後は自由にデータを取得できるようになります。
必要な前提知識
- Google Search Console の基本的な利用経験
- Python の基本的な知識(インストール済であること)
- コマンドラインの基本的な操作ができる
なお、GCP の利用経験は不要です。
初めての方でも理解できるように、画面キャプチャを交えて解説します。
Google Cloud Platform(GCP)の初期設定
GCP アカウントの作成
Google Cloud Platform(GCP)を利用するには、Google アカウントが必要になります。
既に Google Search Console へアクセスできる前提のため、作成手順は割愛します。
プロジェクトの新規作成
GCP では、サービスやリソースをプロジェクト単位で管理します。
以下の手順で新しいプロジェクトを作成します。
- コンソール画面にアクセス
- 画面左上の「プロジェクトの選択」をクリック
- 「新しいプロジェクト」をクリック
- プロジェクト名を入力
ー 例:SearchConsoleAPI
ー プロジェクト ID は自動生成されます - 「作成」をクリック
請求が発生しない無料枠
GCP には無料枠(Free Tier)が用意されています。
- 新規ユーザーには、$300 USD 分のクレジットが 90 日間付与
- Search Console API の利用は無料
- 多くの GCP サービスには永続的な無料枠が用意されている
Google Search Console API はすべて無料で利用できますが、
使用量上限が適用されています。詳細はコチラをご確認ください。
Google Search Console API の有効化
API ライブラリの検索
Google Search Console API を有効化するには、GCP の APIライブラリから設定を行います。
以下の手順で進めていきましょう。
- API ライブラリ画面にアクセス
- 画面左上の「プロジェクトの選択」をクリックし、先ほど作成したプロジェクトを選択
- 検索バーに「Search Console API」と入力
- 検索結果から「Google Search Console API」を選択
注意
「Search Console」だけで検索すると複数のAPIが表示されますが、
必ず「Google Search Console API」で検索するか、検索結果から選択してください。

検索バー

検索結果
API の有効化
API の有効化は以下の手順で行います。
- 検索結果にある「Google Search Console」をクリック
- 作成したプロジェクトが選択されていることを確認
- 「有効にする」ボタンをクリック
- 有効化の処理が完了するまで待機(1~2分程度)
- 「認証情報の作成」ボタンが表示されることを確認
メモ
この時点では認証情報の作成は行わず、次章の手順で作成します。
利用制限の確認
Google Search Console API には以下のような利用制限があります。

制限項目 | 制限値 |
1日あたりのリクエスト数 | 250,000 回 |
1秒あたりのリクエスト数 | 100 回 |
1リクエストあたりの行数 | 25,000 行 |
メモ
通常利用では超えることは無いですが、
制限に近づいた場合は、GCP コンソール画面で警告が表示されます。
サービスアカウントの設定
サービスアカウントとは
サービスアカウントは、「人」のアカウントではなく、
アプリケーションやプログラムが利用するための特別なアカウントです。
API を利用する際の認証に使用します。
サービスアカウントの作成手順
- 左上のナビゲーションメニュから、「IAMと管理」→「サービスアカウント」を選択
- 「サービスアカウントを作成」をクリック
- アカウント名を入力
ー 例:search-console-api-account
ー アカウントID、メールアドレス等は自動で入力されます - 「作成して続行」をクリック

ナビゲーションメニュー

サービスアカウント画面

アカウント作成フォーム
権限の設定
サービスアカウントには、適切な権限を付与する必要があります。
- 「ロール」のボックスをクリック
- 「基本」→「オーナー」を選択
- 「続行」をクリック
- 必要に応じて、ユーザーごとのアクセス権を設定(省略可)
- 「完了」をクリック
注意
適切な権限を設定しましょう。個人であれば「オーナー」で問題ありませんが、
必要最小限の権限のみを付与することがセキュリティ上重要です。
鍵の作成とJSONファイルのダウンロード
- サービスアカウント一覧から作成したアカウントを選択
- 右端の「操作」ボタンから「鍵を管理」をクリック
- 「キーを追加」ボタンをクリックし、「新しい鍵を作成」をクリック
- キーのタイプ「JSON」を選択し、「作成」をクリック
- JSON ファイルが自動的にダウンロードされる

サービスアカウント一覧

鍵の作成
ダウンロードした JSON ファイルは、以下のような構造になっています。
「key_file.json」などに名前を変更しておくと分かりやすくなります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
{ "type": "service_account", "project_id": "your-project-id", "private_key_id": "key-id", "private_key": "-----BEGIN PRIVATE KEY-----\n......", "client_email": "service-account@project.iam.gserviceaccount.com", "client_id": "client-id", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/...", "universe_domain": "googleapis.com" } |
注意
- この JSON ファイルは秘密鍵を含むため、安全に保管してください
- Git などのバージョン管理システムにコミットしないように注意してください
セキュリティのベストプラクティス
鍵に関する一般的なプラクティスを紹介しておきます。
- JSON キーファイルの保護
・.gitignore などに追加
・適切なファイルパーミッションの設定 - 定期的な鍵のローテーション
・90 日ごとの更新を推奨
・古い鍵は適切に無効化
Google Search Console との連携
Search Console でのサービスアカウント追加
作成したサービスアカウントを、Google Search Console に追加する必要があります。
- Google Search Console にアクセス
- 左側のメニューから「設定」を選択
- 「ユーザーと権限」を選択
- 「ユーザーを追加」をクリック
- サービスアカウントのメールアドレスを入力
ー 形式:service-account-name@project-id.iam.gserviceaccount.com
ー GCP コンソールのサービスアカウント詳細画面で確認可能 - 適切な権限レベルを選択して「追加」をクリック

設定画面

ユーザー追加フォーム

動作確認用のテストコード
必要なパッケージのインストール
command
$ pip install google-api-python-client oauth2client
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
from google.oauth2 import service_account from googleapiclient.discovery import build # サービスアカウントの認証情報を読み込み credentials = service_account.Credentials.from_service_account_file( 'key_file.json', scopes=['https://www.googleapis.com/auth/webmasters.readonly'] ) # Search Console APIのサービスを初期化 service = build('searchconsole', 'v1', credentials=credentials) # サイトの一覧を取得 sites = service.sites().list().execute() print(sites) |
スクリプトの実行
ダウンロードした JSON ファイルと、上記の fetch_search_console_api.py を同じディレクトリに置き、
以下のように実行します。
command
$ python fetch_search_console_api.py
以下のようなリストが出力されていれば、正常にアクセスできています。
実行結果
{'siteEntry': [{'siteUrl': 'https://progzakki.sanachan.com/', 'permissionLevel': 'siteOwner'}]}
おわりに
いかがでしたでしょうか。
本記事では、Google Search Console API を利用するための環境構築について、
- GCP プロジェクトの作成
- Search Console API の有効化
- サービスアカウントの設定
- Search Console との連携
の流れで手順を説明してきました。
本記事が、Google Search Console API を活用したサイト分析の第一歩となれば幸いです。
次回の記事では、実際のデータ取得と Excel レポート作成について解説していきます。
追記
実際のデータ取得と Excel レポート作成についての記事を掲載しました。
こちらもCHECK
-
-
Google Search Consoleのページとクエリ分析でリライト候補を自動選定する方法
続きを見る
参考
- 公式:Google Search Console API
- 公式:Google Cloud Platform ドキュメント
- GitHub:Python Google API Client Library