#python #google-analytics #google-analytics-api #google-api-python-client
#python #google-analytics #google-analytics-api #google-api-python-client
Вопрос:
Я использую Google Analytics API на Python для отслеживания «загрузок» с некоторых веб-сайтов (на веб-сайтах есть доступные файлы, которые люди могут загрузить, и я отслеживаю, сколько людей это сделали). «Загрузки» в GA помечены как «События». Данные проверяются мной ежемесячно. На 2 из 35 веб-сайтов значения «Загрузок» в моем скрипте отличаются по сравнению с GA — мой скрипт обычно показывает мне меньшее число, чем то, что я вижу в GA, только в 1 из 20 месяцев значение скрипта было выше. Список загруженных файлов правильный (то же самое в данных из 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, end_date, page_id, 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, end_date, page_id, 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
Комментарии:
1. Покажите свой отчет GA и вызовите API, пожалуйста
2. Только что сделал, извините
3. пожалуйста, отредактируйте свой вопрос и покажите нам, что вы подразумеваете под неправильным. Какие две цифры вы сравниваете.