Googleアナリティクスって使ったことがある人なら分かると思いますが、情報量えげつないですよね(語彙力)。ちょっと情報取得できればと思ってもどこを見たら良いのか分からず、最初はダッシュボードを使いこなすことさえままならないと思います。そんな中個人的には他のツールから取得したデータと組み合わせて別途ダッシュボードを作成したいなと思っていたところでして、調べてみるとPythonからAPIを叩けるんですね。実際に使ってみたので設定方法含めまとめます。なお、以下略称です。
PythonでAPIを叩くために今回はGoogle Analytics Data APIというものを使います。似たライブラリにGoogle Analytics Reporting API v4というものがありますが、ドキュメントに記載の通りこちらはUAのみ対応(GA4非対応)のため、今回は利用しません。v4とか記載があるからGA4対応かと勘違いしてしまいますよね。そのUAは2023年7月1日をもって廃止となりますました。お世話になりました。
それではAPIを使うための設定をしていきましょう。以下大きく2ステップとなります。
pip install google-analytics-data
で対象のライブラリをインストールしておきます。
load_dotenv()メソッドで環境変数読み込みます。BetaAnalyticsDataClientクラスを利用します。BetaAnalyticsDataClientでは、runReportメソッド、getMetadataメソッド、checkCompatibilityメソッド等が提供されています。その中でも今回はrunReportメソッドを使ってみましょう。他にもいくつかメソッドは提供されていますが、上記3メソッドはそれぞれ以下のような役割を果たします。runReport()メソッド:GA4データの取得において最も一般的・汎用的なメソッドです。以下の通りコード例を示すので参考にしてみてください。getMetadata()メソッド:データスキーマ・リファレンス情報を取得するためのメソッドです。利用可能なmetrics, dimensions等の詳細情報を取得できます。checkCompatibility()メソッド:指定したクエリとパラメータにおいてAPIとの互換性確認するためのメソッドです。RunReportRequest()でリクエストを作成します。22行目〜25行目のパラメータについての説明は以下の通りです。dimentionsとmetricsの違いは分かりづらいですが、Web担当者Forumさんの記事が分かりやすいです。property :上で説明したプロパティIDです。dimensions:データの属性を指します。これに基づいてグループ化(ソート)ができます。metrics:データの指標を指します。集計値・数値になります。date_ranges:データを取得する期間です。開始日・終了日を一緒に指定します。RunReportRequest()で作成したリクエストをrunReport()メソッドに渡すことで、任意のGA4データを取得することができます。今回はrunReportというメソッドを使いましたが、中でもdimensions, metrics以外にも指定可能なパラメータについては公式サイトに一覧があるので、逐一参照しつつ使いましょう。また「GA4 Dimensions & Metrics Explorer」というツールを使えば、利用可能なdimentionsとmetricsの組み合わせを確認することができ、さらに、データのレスポンス形式についても事前に確認することができます。
よろしければこちらの記事も参考にしてみてください。
Loading...