Применение фильтров к API Google Analytics в Python
Я новичок в написании запросов в Google Analytics и заинтересован в добавлении фильтра в метод ниже. В частности, чтобы отфильтровать местоположения, но я постоянно получаю сообщение об ошибке, когда в поле оператора есть что-то кроме "EXACT". для измерения FilterClauses.
есть список допустимых операторов для этого поля? NOT_ EXACT, NOT_EQUALS и символы!=, <>, =/=. кажется, они ошибаются. конкретная ошибка: 400 when requesting https://analyticsreporting.googleapis.com/v4/reports:batchGet?alt=json returned "Invalid value at 'report_requests[0].dimension_filter_clauses[0].filters[0].operator' (TYPE_ENUM), "NOT_EQUAL"">
кажется, что должно быть перечисление допустимых операторов, я просто не могу его найти.
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,
'dateRanges': [{'startDate': '2016-07-01', 'endDate': 'today'}],
'metrics': [{'expression': 'ga:pageviews'}],
'dimensions': [{'name': 'ga:country'}, {'name': 'ga:city'}],
'metricFilterClauses': [{
'filters': [{
"metricName": "ga:pageviews",
"operator": "GREATER_THAN",
"comparisonValue": "1000"
}]
}],
'dimensionFilterClauses': [
{
'filters': [
{
"dimensionName": "ga:country",
"operator": "EXACT",
"expressions": ["United States"]
}
]
}
]
}]
}
).execute()
1 ответ
Может это тебе поможет
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,
'dateRanges': [{'startDate': '2019-07-01', 'endDate': '2020-04-01'}],
'metrics': [{'expression': 'ga:pageviews'}],
'dimensions': [{'name': 'ga:country'}, {'name': 'ga:city'}],
"dimensionFilterClauses":[
{
"operator":"AND",
"filters":[
{
"dimensionName":"ga:pageviews",
"operator":"NUMERIC_GREATER_THAN",
"expressions":[
1000
]
},
{
"dimensionName":"ga:country",
"operator":"EXACT",
"expressions":[
"United States"
]
}
]
}
],
}]
}
).execute()
Кажется, согласно здесь: https://developers.google.com/analytics/devguides/reporting/core/v4/rest/v4/reports/batchGet
... который ведет сюда: https://developers.google.com/analytics/devguides/reporting/core/v4/rest/v4/reports/batchGet
Это должно быть либо AND
или же OR
, Не уверен почему EXACT
проходит - просто что-то не официально в документации API, кажется. Если не указано, это рассматривается как "ИЛИ".