在API的第3版中,我发现有一个max-results参数可以传递以获得超过1000条记录。我无法弄清楚如何使用python在API的v4中传递该参数。
我的代码如下所示。我已经在max_result上评论了我最好的猜测。
def get_report(analytics):
# Use the Analytics Service Object to query the Analytics Reporting API V4.
return analytics.reports().batchGet(
body={
'reportRequests': [
{
'viewId': VIEW_ID,
#'max_results': 100000,
'dateRanges': [{'startDate': '2016-04-01', 'endDate': '2016-08-09'}],
'dimensions': [{'name':'ga:date'},
{'name': 'ga:channelGrouping'}],
'metrics': [{'expression': 'ga:sessions'},
{'expression': 'ga:newUsers'},
{'expression': 'ga:goal15Completions'},
{'expression': 'ga:goal9Completions'},
{'expression': 'ga:goal10Completions'}]
}]
}
).execute()
答案 0 :(得分:10)
您要查找的参数的正确名称是:pageSize
。 Reference Docs提供完整的API规范。
def get_report(analytics):
# Use the Analytics Service Object to query the Analytics Reporting API V4.
return analytics.reports().batchGet(
body={
'reportRequests': [
{
'viewId': VIEW_ID,
'pageSize': 10000,
'dateRanges': [{'startDate': '2016-04-01', 'endDate': '2016-08-09'}],
'dimensions': [{'name':'ga:date'},
{'name': 'ga:channelGrouping'}],
'metrics': [{'expression': 'ga:sessions'},
{'expression': 'ga:newUsers'},
{'expression': 'ga:goal15Completions'},
{'expression': 'ga:goal9Completions'},
{'expression': 'ga:goal10Completions'}]
}]
}
).execute()
注意:无论您要求多少,API都会为每个请求返回最多 100,000 行。在您尝试max_results
时,这告诉我您正在尝试从Core Reporting API V3迁移,请查看Migration Guide - Pagination documentation以了解如何请求下一个10,000行。
Stack Overflow额外提示。在您的问题中包含您的错误回复,因为它可能会提高您有能力提供帮助的机会。