
API Key 密鑰:深入理解與應用
啟用 API
創建服務賬號
Analytics Viewer
與 Search Console Reader
角色,下載 JSON 憑證。設置環境變量
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/credentials.json"
安裝 SDK
pip install google-analytics-data google-api-python-client
from google.analytics.data_v1beta import BetaAnalyticsDataClient
from google.analytics.data_v1beta.types import RunReportRequest, DateRange, Dimension, Metric
client = BetaAnalyticsDataClient()
request = RunReportRequest(
property="properties/123456789",
date_ranges=[DateRange(start_date="2025-07-01", end_date="2025-07-31")],
dimensions=[Dimension(name="sessionDefaultChannelGroup")],
metrics=[Metric(name="sessions"), Metric(name="pageViews"), Metric(name="bounceRate")],
)
response = client.run_report(request)
for row in response.rows:
print(f"{row.dimension_values[0].value}: Sessions={row.metric_values[0].value}, "
f"PageViews={row.metric_values[1].value}, BounceRate={row.metric_values[2].value}%")
sessionDefaultChannelGroup
、pagePath
sessions
、pageViews
、bounceRate
from google.analytics.data_v1beta.types import FilterExpression, Filter
request.metrics.append(Metric(name="eventCount"))
request.dimension_filter = FilterExpression(
filter=Filter(field_name="eventName", string_filter={"value": "purchase"})
)
response = client.run_report(request)
for row in response.rows:
sessions = int(row.metric_values[0].value)
purchases = int(row.metric_values[1].value)
cr = purchases / sessions * 100 if sessions else 0
print(f"{row.dimension_values[0].value}: CR={cr:.2f}%")
purchases ÷ sessions × 100%
from googleapiclient.discovery import build
sc = build('searchconsole', 'v1', credentials=creds)
response = sc.searchanalytics().query(
siteUrl='https://www.example.com',
body={
"startDate": "2025-07-01",
"endDate": "2025-07-31",
"dimensions": ["query", "page"],
"rowLimit": 200
}
).execute()
for row in response.get('rows', []):
query, page = row['keys']
clicks = row['clicks']; imp = row['impressions']
ctr = row['ctr']; pos = row['position']
print(f"{query} → {page}: Clicks={clicks}, Impressions={imp}, CTR={ctr:.2%}, AvgPos={pos:.2f}")
clicks
、impressions
、CTR
、averagePosition
將 GA4 Data API 獲取的 sessions 與 GSC API 獲取的 impressions/ctr 按 page
或 query
聚合,實現 SEO 深度洞察。
批量導出
數據存儲
ETL 處理
CR
、CTR
、AvgPos
。可視化呈現
自動告警
CR < 1%
或 CTR
異常時自動通知。> 長尾關鍵詞:batchRunReports?大規模導出、BigQuery?SEO?數據倉庫、Looker?Studio?SEO?儀表盤、自動告警 SEO
pagePath+query
結合分析,提高優化精度。purchase
、add_to_cart
、lead_form
等事件命名。本文系統化介紹了 Analytics?SEO?API 的入門與實戰使用:
runReport
、batchRunReports
用于流量與轉化數據獲取。下一步可拓展:
立即動手,用 Analytics?SEO?API 打造高效、可擴展的數據驅動 SEO 優化體系!