R:Google Analytics
|
Материал «R:Google Analytics», созданный авторами Филипп Управителев и Артём Клевцов, публикуется на условиях лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная. | |
|
Перед использованием функций из пакетов их необходимо предварительно установить и загрузить: КодR <syntaxhighlight lang="r">> install.packages(pkgs = "pkgname") > library(package = "pkgname")</syntaxhighlight> |
Содержание
Общее описание
Пакетов для работы с API Google Analytics несколько, наиболее часто упоминающиеся - rga
и RGoogleAnalytics
. В принципе, они различаются незначительно - в процедуре аутентификации и организации доступа к API. Пакет rga
выглядит более удобным для работы, так как ключ для аутентификации создается один раз, и потом только загружается, в то время как при работе с пакетом RGoogleAnalytics
приходится в начале каждой сессии проходить аутентификацию в браузере. К тому же, пакет rga
обладает более прозрачной логикой запросов к API.
Установка необходимых пакетов
Устанавливаем и подключаем пакет devtools
, для доступа к github, требуется только в первый раз
<syntaxhighlight lang="r">> install.packages("devtools") > library(devtools)</syntaxhighlight>
Загрузка пакета доступа к GA, требуется только в начале работы при запуске новой R-сессии:
<syntaxhighlight lang="r">> install_github("rga", "skardhamar")</syntaxhighlight>
После обновления пакета httr
до версии 0.3, функции которого используются в пакете rga
, появились сложности и ошибки с выводом данных запроса при использовании нескольких метрик. Поэтому на данный момент использование пакета rga
возможно только с установкой предыдущей версии пакета httr
(0.2) вручную. Установить пакет httr
необходимый версии можно с помощью функции install_url()
из пакет devtools
, который мы уже загрузили ранее:
<syntaxhighlight lang="r">> install_url("http://cran.r-project.org/src/contrib/Archive/httr/httr_0.2.tar.gz")</syntaxhighlight>
Организация доступа к API
Подключение пакета доступа к GA
<syntaxhighlight lang="r">> library(rga)</syntaxhighlight>
Запрет верификации SSL-соединения
<syntaxhighlight lang="r">> curl <- getCurlHandle() > options(RCurlOptions = list(capath = system.file("CurlSSL", "cacert.pem", package = "RCurl"), ssl.verifypeer = FALSE))</syntaxhighlight>
Для создания ключа аутентификации потребуется переход в браузер, подтверждение доступа и копирование ключа в консоль. Команда создает отдельный файл, который потом можно использовать для аутентификации, без перехода в браузер и т.д.
<syntaxhighlight lang="r">> rga.open(instance = "ga", where = "ga.rga")</syntaxhighlight>
Видим, что в директории проекта появился файл ga.rga[1].
Второй вариант аутентификации, с созданием собственного "проекта" и ключей доступа:
- Необходимо создать проект на странице https://console.developers.google.com/project/;
- Во вкладке APIs & auth выбрать Analytics API, и там перейти во вкладку Credentials, где выбрать Create new Client ID;
- При создании Client ID выбрать Installed application/other, и нажать create;
- В результате будет Client ID = и Client secret = ;
- На вкладке Consent screen необходимо выбрать рабочий email и дать название приложению (Product name), сохранить;
- На общей вкладке APIs & auth/Analytics API/APIs надо активировать API, нажав на кнопку, где написано OFF.
Создаем постоянный ключ (откроется браузер, где надо будет выбрать свой почтовый аккаунт и подтвердить вход в API, тогда выдадут код, который надо будет вставить в консоль):
<syntaxhighlight lang="r">> rga.open(instance = "ga", + client.id = "", #необходимо вставить сюда Client ID + client.secret = "", #необходимо вставить сюда Client secret + where = "api.rga")</syntaxhighlight>
Примечания
- ↑ Можно указать любой удобный для на путь и имя файла.