Google Ad Manager API 报表查询

Posted

技术标签:

【中文标题】Google Ad Manager API 报表查询【英文标题】:Google Ad Manager API Report Querying 【发布时间】:2020-10-07 18:45:44 【问题描述】:

Google 为广告经理 here 提供以下文档。不幸的是他们的例子:

# Set the start and end dates of the report to run (past 8 days).
end_date = date.today()
start_date = end_date - timedelta(days=8)

# Create report job.
report_job = 
    'reportQuery': 
        'dimensions': ['LINE_ITEM_ID', 'LINE_ITEM_NAME'],
        'columns': ['AD_SERVER_IMPRESSIONS', 'AD_SERVER_CLICKS',
                    'AD_SERVER_CTR', 'AD_SERVER_CPM_AND_CPC_REVENUE',
                    'AD_SERVER_WITHOUT_CPD_AVERAGE_ECPM'],
        'dateRangeType': 'CUSTOM_DATE',
        'startDate': start_date,
        'endDate': end_date
    


# Initialize a DataDownloader.
report_downloader = client.GetDataDownloader(version='v202008')

try:
  # Run the report and wait for it to finish.
  report_job_id = report_downloader.WaitForReport(report_job)
except errors.AdManagerReportError as e:
  print('Failed to generate report. Error was: %s' % e)

with tempfile.NamedTemporaryFile(
    suffix='.csv.gz', mode='wb', delete=False) as report_file:
  # Download report data.
  report_downloader.DownloadReportToFile(
      report_job_id, 'CSV_DUMP', report_file)

report_job_id 行上产生KeyError: 'date'。我的授权是正确的,我可以与我的客户进行其他通话。我的问题是,如何更新report_job 才能使示例正常工作。我尝试更改 'dateRangeType' 但 this 声明它必须是“CUSTOM_DATE”。

【问题讨论】:

【参考方案1】:

显然该示例是错误的,该示例的正确语法是:

'startDate': 
    'year': 2021,
    'month': 3,
    'day': 1
,

https://github.com/googleads/googleads-python-lib/issues/475#issuecomment-821209008

【讨论】:

以上是关于Google Ad Manager API 报表查询的主要内容,如果未能解决你的问题,请参考以下文章