Подключение Power BI к Yandex.Metrika

19.05.2017 12:22:00
Создание подключения PowerBI к Yandex.Metrika, при помощи R-script.
С тех пор, как мы начали работать с Microsoft Power BI, прошло значительное количество времени и, неожиданно было отмечено, что у нас осталась лишь одна область деятельности без визуализированных отчётов – Яндекс Метрика. 
Однако, тривиальная в общем-то задача, оказалась не настолько простой, как ожидалось.  
Всё дело в том, что если для Google Analytics у Microsoft cуществует коннектор «из коробки», то для продукта российской компании его нет.

GoogleAnalyticsPowerBI.png

На помощь пришли поисковые системы, и спустя некоторое время было сформировано два варианта по достижению нашей цели. Первый вариант – готовое решение для экспорта данных из Яндекс Метрики в Excel или Power BI от Максима Уварова. Инструкция по подключению достаточно подробна и вряд ли нуждается в пояснениях.
Вторым же вариантом оказалось использование скриптового языка R-script, для подключения к API.

RscriptPowerBI.png

В то время как моя коллега решила следовать первому варианту, я предпочёл второй путь решения. Для этого мне понадобился программный пакет ryandexdirect, за авторством Алексея Селезнёва, актуальная версия R и, разумеется, PowerBIПосле установки и запуска R, нужно загрузить в него дополнительные пакеты. 
Для этого необходимо вставить следующие строки в консоль R :

if(!"bitops" %in% installed.packages()[,1]){install.packages("bitops")} 
if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")} 
library(devtools) 
install_github('selesnow/ryandexdirect') 
library(ryandexdirect)

В результате проделанных операций появится сообщение, подтверждающее удачную установку пакетов.

ryandexdirect.png

Для дальнейшей работы потребовалось получить токен, для доступа к API Метрики. 
Вводим следующую строку в консоли R .

my_token <- yadirGetToken()

В открывшемся окне браузера, приложение запросит доступ к данным и, после того как получит желаемое, откроет окно с кодом доступа к API.
Его нужно сохранить, поскольку он понадобится немного позже.

ryandexdirect get token from yametrika api.png

Далее, нужно указать в PBI местонахождение каталога R-script.

pbi r-script location.png

И добавить следующую команду в R :

pbi r-script ryandexdirect.png

В работе с функцией используются следующие аргументы, параметры которых необходимо заменить на ваши данные:

  • counter — номер счётчика Яндекс.Метрики; 
  • date_from — начальная дата отчёта;
  • date_to — конечная дата отчёта;
  • fields — список полей, которые вы хотите получить; при этом нельзя одновременно запрашивать данные, с разными суффиксами, например: ym:s:visitID и ym:ad:currency ;
  • source — источник записей; варианты для запроса: «hits» просмотры или «visits» визиты;
  • token — API токен; ключ доступа к Logs API, который мы получили ранее;

В результате мы получили устойчивое подключение к Яндекс Метрике. 
Дело за малым – нарисовать красивый отчёт.

connect powerbi to yametrika.png


malykh.jpg

автор:

Малых Дмитрий, бизнес-аналитик Департамента Управления Проектами