※本記事にはPR(アフィリエイト広告)が含まれています。
【ブログ集客自動化マスター講座】第3回 Google Analytics APIでアクセスデータを自動取得する方法
こんにちは!「ブログ集客自動化マスター講座」第3回へようこそ。前回の第2回では、ブログ記事の投稿作業を自動化する方法についてご紹介しました。今回はいよいよ「データ分析の自動化」に踏み込んでいきます。
ブログ集客を成功させるためには、日々のアクセス状況を正確に把握することが欠かせません。とはいえ、毎日Googleアナリティクスの管理画面にログインしてチェックするのは意外と手間がかかりますよね。そこで今回は、Google Analytics APIを使ってアクセスデータを自動取得する方法を、初心者の方にもわかりやすく解説していきます。
プログラミング経験が浅い方でも一つずつ手順を追っていけば実装できる内容になっていますので、ぜひ最後までお付き合いください。
Google Analytics APIとは何か
まずは「Google Analytics API」がどんなものなのか、基本から押さえておきましょう。
Google Analytics APIの概要
Google Analytics APIは、Googleアナリティクスに蓄積されたアクセスデータを、プログラムを使って自動的に取得できる仕組みです。通常であれば管理画面にログインして手作業で確認するデータを、コードを一度書いておくだけで何度でも自動取得できるようになります。
GA4とUniversal Analyticsの違い
現在主流となっているのは「GA4(Google Analytics 4)」というバージョンです。以前広く使われていた「Universal Analytics(UA)」はすでに計測を終了しているため、これから自動化の仕組みを作る場合は、GA4に対応した「Google Analytics Data API」を利用するのが基本となります。この記事でも、GA4を前提に解説を進めていきます。
APIを使うメリット
- 毎日の手動チェック作業が不要になる
- 取得したデータをスプレッドシートやレポートツールに自動反映できる
- 複数のブログ・サイトのデータをまとめて管理できる
- 異常なアクセス変動にいち早く気づける仕組みが作れる
APIを利用するための事前準備
APIを使うには、Google Cloud Platform(GCP)上でいくつかの設定を行う必要があります。少し専門的に感じるかもしれませんが、手順通りに進めれば難しくありません。
Google Cloudプロジェクトの作成
まずGoogle Cloud Consoleにアクセスし、新しいプロジェクトを作成します。プロジェクト名はわかりやすいもの(例:「blog-analytics-automation」など)を付けておくと管理がしやすくなります。
Google Analytics Data APIの有効化
作成したプロジェクト内で「APIとサービス」メニューを開き、「Google Analytics Data API」を検索して有効化します。これを行わないとAPI経由でのデータ取得ができませんので、忘れずに設定しましょう。
サービスアカウントの作成とキーの発行
次に「認証情報」メニューからサービスアカウントを作成します。サービスアカウントとは、プログラムがGoogleのサービスにアクセスするための“専用アカウント”のようなものです。作成後、JSON形式の秘密鍵ファイルをダウンロードしておきます。このファイルは認証情報を含む重要なデータなので、第三者に見られないよう厳重に保管してください。
GA4側でのアクセス権限付与
最後に、Googleアナリティクスの管理画面に移動し、「プロパティ設定」→「プロパティのアクセス管理」から、先ほど作成したサービスアカウントのメールアドレスを追加します。権限は「閲覧者」で問題ありません。これでAPI経由でのデータ取得準備が整いました。
Pythonでアクセスデータを取得してみよう
ここからは実際にプログラムを使って、アクセスデータを取得する手順を見ていきましょう。今回はプログラミング初心者にも扱いやすい「Python」を使用します。
必要なライブラリのインストール
まずはターミナル(コマンドプロンプト)で、以下のコマンドを実行してGoogle公式のライブラリをインストールします。
pip install google-analytics-data
認証処理を書く
先ほどダウンロードしたサービスアカウントのJSONファイルを使って、認証処理を行います。
import os
from google.analytics.data_v1beta import BetaAnalyticsDataClient
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "service_account.json"
client = BetaAnalyticsDataClient()
アクセスデータを取得するコード例
次に、直近7日間のページビュー数を取得するサンプルコードを紹介します。「property_id」の部分は、ご自身のGA4プロパティIDに置き換えてください。
from google.analytics.data_v1beta.types import (
DateRange, Dimension, Metric, RunReportRequest
)
request = RunReportRequest(
property=f"properties/{property_id}",
dimensions=[Dimension(name="date")],
metrics=[Metric(name="screenPageViews")],
date_ranges=[DateRange(start_date="7daysAgo", end_date="today")],
)
response = client.run_report(request)
for row in response.rows:
print(row.dimension_values[0].value, row.metric_values[0].value)
このコードを実行すると、日付ごとのページビュー数が一覧で出力されます。たったこれだけのコードで、毎回管理画面を開かなくてもデータが取得できるようになるのは便利ですよね。
取得したデータを自動化の仕組みに組み込む
データを取得できるようになったら、次は「継続的に活用する仕組み」を作っていきましょう。
定期実行の自動化
作成したPythonスクリプトは、Windowsの「タスクスケジューラ」やMacの「cron」、あるいはクラウド上の「Cloud Functions」や「GitHub Actions」などを使って定期実行することができます。例えば「毎朝9時に自動でデータを取得する」といった仕組みを作れば、起きたらすでに最新データが手元にある、という状態を実現できます。
スプレッドシートへの自動出力
取得したデータは、Google Sheets APIと組み合わせることで、自動的にスプレッドシートへ書き込むことも可能です。こうしておけば、チームメンバーとも簡単にデータを共有でき、グラフ化もスムーズに行えます。
異常検知への応用
応用編として、「前日比で急激にアクセスが減少した場合にSlackへ通知する」といった仕組みを作ることもできます。これにより、サイトの不具合やSEO評価の変動にいち早く気づくことができ、トラブル対応のスピードが格段に上がります。
まとめ
今回はGoogle Analytics APIを使って、ブログのアクセスデータを自動取得する方法について解説しました。
- Google Analytics APIを使えば、アクセスデータの確認作業を自動化できる
- 利用にはGoogle Cloud Consoleでの事前設定(プロジェクト作成・API有効化・サービスアカウント作成)が必要
- Pythonの「google-analytics-data」ライブラリを使えば、少ないコードでデータ取得が可能
- 定期実行やスプレッドシート連携と組み合わせることで、さらに実用的な自動化が実現できる
最初は設定項目が多く感じられるかもしれませんが、一度仕組みを作ってしまえば、その後は非常に楽になります。ぜひご自身のブログ環境で試してみてください。
次回、第4回では「取得したアクセスデータをもとに、自動でレポートを作成する方法」について解説していく予定です。お楽しみに!
Photo by Shamin Haky on Unsplash

