Материал довольно сложный, очень рекомендуем просмотреть видео, чтобы допустить меньше ошибок.
Готовый код можно скачать тут. Вам останется только указать свои учетные данные.Зачем?
Была необходимость проанализировать большой объем данных. Столкнулись со следующими проблемами:
Предложенное решение не является единственным или оптимальным. Мы не разработчики, нам просто нужно было решить задачу быстро. Делимся способом с вами.
В данной статье мы не будем знакомить вас с синтаксисом и возможностями Python – это полноценный язык программирования, изучить основы которого можно по видеоурокам или на ресурсах типа CodeAcedemy.
Яндекс сам дает готовый пример кода, которым можно выгрузить отчет, остается указать некоторые параметры. Мы доработали скрипт таким образом, чтобы большой объем данных можно было выгрузить помесячно и склеить в один файл для дальнейшего анализа.
Вам потребуется:
Мы с вами построим обычный отчет, аналогичный «Мастеру отчетов» в интерфейсе Яндекс Директ, но с помощью кода и сторонней программы. Нужно определиться с полями и показателями, которые будем выгружать. Важно знать, что некоторые из полей несовместимы между собой, то есть в одном отчете их не выгрузить. Подробное описание всех полей и их совместимости находится в справке Яндекс. Там же находится информация о типах отчетов, которые можно выгрузить, рекомендуем ознакомиться.
В приложенном коде мы постарались сделать максимально широкий набор полей, подходящий для анализа почти любых срезов. Подробно описали поля в видео, тут затронем только самые важные. Открываем файл «loader.py» и приступаем к его настройке.
Укажите путь к папке, в которой находится скачанный код, туда же загрузятся данные из API.
Замените авторизационный токен и логин для входа в Директ на ваши:
Укажите начальную дату выгрузки:
Далее вы увидите список полей отчета. В первой строке указан период, для которого данные будут суммироваться, в рамках данной задачи – это месяц. Большинство остальных полей понятны по названию, более подробно затрагиваем их в видео.
Пропишите идентификатор цели, без него данные могут не выгрузиться. Найти его можно в Яндекс Метрике:
Параметр «Limit» задает максимальное количество строк на странице. По умолчанию это значение равно 1млн. строк. Мы увеличили это значение, чтобы ускорить выгрузку. Объяснять как это работает тут не будем, чтобы не усложнять.
Тип отчета, в нашем случае CUSTOM_REPORT=Пользовательский отчет. Если вы меняли поля, возможно, вам нужен другой тип, подробнее смотрите в справке.
На этом настройка завершена, можно переходить к выгрузке. Для этого щелкните правой кнопкой мыши на файл «loader.py» и выберите команду «Run».
Вебинар: как выжать максимум из контекстной рекламы
30-минутная выжимка нашего опыта на основе 100+ аудитов. Рассказываем, какие 12 ошибок чаще всего допускают предприниматели, когда начинают работать с контекстной рекламой.
Получить вебинар
После окончания загрузки данных в левой панели навигации вы увидите несколько csv-таблиц, с датами в названии. Каждый файл содержит данные за месяц. Если есть файлы с выгрузкой за неполный месяц, удаляем их. В нашем примере останутся 2 файла:
Все таблицы мы будем «склеивать» в один документ, поэтому нужно их подготовить. Каждая из таблиц содержит названия отчета и заголовки столбцов вверху и итоговые значения внизу, это вызовет ошибку. Нужно оставить заголовки столбцов только в самой ранней таблице, а в остальных удалить. Итоговые значения и нужно удалить из всех таблиц. Скорее всего, Excel не потянет такой объем, поэтому быстрее будет открыть в текстовом редакторе, в нашем примере «Sublime Text».
Открываем за самый ранний период и удаляем первую строку с его названием:
Аналогично удаляем и последнюю строку документа с итоговым количеством строк:
В остальных файлах удаляем название отчета, заголовки столбцов и итоговую строку в конце:
Теперь осталось склеить файлы в один. Это делается через терминал. Команда для Windows и macOS будет отличаться. На Windows для каждого из файлов нужно выполнить команду:
type 20190701-20190731.tsv >> outputfile.csv type 20190701-20190731.tsv >> outputfile.csv
На этом все, мы получили файл, который можно подключить к Power BI и визуализировать данные. Как это сделать расскажем в следующей статье.