GA многоканальная воронкообразная аналитика с Python: И фильтры в методе mcf.get? - PullRequest
0 голосов
/ 27 сентября 2019

Я использую пакет google-api-python-client для извлечения данных для API многоканальной воронки GA (сокращенно MCF) с использованием метода mcf.get.Я пытаюсь применить фильтр, но он не работает так, как я хочу.

Вот некоторые переменные для извлечения, которые я пытаюсь сделать:

mcf_dimensions = ["mcf:conversionDate", "mcf:sourceMediumPath", "mcf:campaignPath"]
mcf_filters = ["mcf:conversionGoalNumber==016;mcf:conversionType==Goal"]
mcf_metrics = ["mcf:totalConversions"]
mcf_row_limit = 5000
mcf_sort = ["-mcf:conversionDate"]
mcf_view_id = "ga:117850295"

Я вызываю mcf.get метод, подобный следующему:

data = mcf.get(ids=mcf_view_id, start_date=r, end_date=r, metrics=",".join(mcf_metrics) if len(mcf_metrics) > 0 else None, sort=",".join(mcf_sort) if len(mcf_sort) > 0 else None, dimensions=",".join(mcf_dimensions) if len(mcf_dimensions) > 0 else None, filters=",".join(mcf_filters) if len(mcf_filters) > 0 else None, max_results=mcf_row_limit, samplingLevel="HIGHER_PRECISION", start_index=page_index).execute()

r - текущая дата, а page_index - смещение нумерации страниц (увеличивается на mcf_row_limit на каждой итерации)

У меня проблема в том, чтоЯ не получаю строки в результате API.Если mcf_filters объявлено как ["mcf:conversionGoalNumber==016", "mcf:conversionType==Goal"], это работает, но это дает мне слишком много результатов (потому что фильтр, по сути, говорит: «когда mcf: translationGoalNumber равен 016 ИЛИ mcf: translationType равно Goal»), и мне нужно выполнить операцию ANDмежду двумя фильтрами.

Я пытался указать mcf_filters, как вы видите в начале моего поста (в документации API написано, что фильтр AND выражается точкой с запятой), но он не работает.

Как я могу выполнить операции И между фильтрами, используя метод mcf.get?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...