问题描述
我正在使用Python中的Google Analytics(分析)API来跟踪某些网站上的“下载”(这些网站上有可供人们下载的可用文件,我正在跟踪有多少人下载了该文件)。 GA中的“下载”被标记为“事件”。我正在按月检查数据。在35个网站中,有2个网站的脚本中“下载”的值与Google Analytics(分析)相比有所不同-我的脚本通常向我显示的数字比我在GA中看到的要少,而20个月中就有1个脚本值更高。下载的文件列表正确(API和GA中的数据相同)。对于所有网站,我循环使用相同的代码。我已经检查了“采样”,这在这里不是问题。 任何猜测可能导致问题的原因? 预先谢谢你。
我要附加部分代码:
def get_events_report(analytics,start_date,end_date):
# Use the Analytics Service Object to query the Analytics Reporting API V4.
page_ids = get_page_ids()
report = {}
start_date = str(start_date)[:10]
end_date = str(end_date)[:10]
for country,page_id in page_ids.items():
print('page_id: ' + str(page_id))
print('country: ' + str(country))
n_report = get_batch_report(start_date,end_date,page_id,0)
n_report[page_id] = n_report.pop('reports')
try:
if n_report[page_id][0]['nextPagetoken']:
print(n_report[page_id][0]['nextPagetoken'])
r = get_batch_report(start_date,n_report[page_id][0]['nextPagetoken'])
n_report.update(r)
except KeyError:
pass
report.update(n_report)
time.sleep(2)
table = get_events_table(report)
return table
def get_batch_report(start_date,pagetoken):
report = analytics.reports().batchGet(
body={
'reportRequests': [
{
'viewId': page_id,'dateranges': [{'startDate': start_date,'endDate': end_date}],'metrics': [{'expression': 'ga:uniqueEvents'}],'dimensions': [{'name': 'ga:dateHourMinute'},{'name':'ga:eventAction'},{'name':'ga:eventLabel'}],'pageSize': '10000',"samplingLevel": "LARGE","dimensionFilterClauses": [{
"filters": [{
"dimension_name": "ga:eventAction","operator": "PARTIAL","expressions": ["downloads"]
}]}],"orderBys": [
{
"fieldName": "ga:dateHourMinute","sortOrder": "ASCENDING"
}]
}]
}).execute()
return report
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)