- PVSM.RU - https://www.pvsm.ru -
Яндекс. Метрика — отличный инструмент для сбора данных о посещениях сайта, но, к сожалению, бывает так, что в веб-интерфейсе не хватает того или иного функционала – например, автоматической отправки отчета. В этой статье я подробно опишу, как получить статистику по роботности c помощью языка R.
1.1. Скачайте и установите актуальную версию R [1], а также интегрированную среду разработки R Studio [2], в которой вам будет удобнее работать.
1.2. В R-Studio создаем новый файл и вставляем код:
install.packages("xlsx")
install.packages("mailR")
install.packages("taskscheduleR")
1.3. Чтобы запустить процесс установки пакетов, выделите весь текст и нажмите «Run»
2.1. Создаем приложение oauth.yandex.ru/client/new [3]
Получаем следующее:
2.2. Идем по ссылке: oauth.yandex.ru/authorize?response_type=token&client_id= [4]<идентификатор приложения>, где вместо <идентификатора> подставляем свое значение ID.
2.3. Даем разрешение:
2.4. Копируем и сохраняем токен:
3.1. Вставляем код в R-Studio:
Меняем: setwd, appToken, counterID, почту получателя, свою почту и пароль
library(xlsx)
library(mailR)
setwd("D:/R")
appToken <-"здесь должен быть токен"
date1 <-format(Sys.Date()-1, "%Y-%m-%d")
date2 <-format(Sys.Date()-1, "%Y-%m-%d")
counterID <-"здесь номер счетчика"
metrics <-"ym:s:visits,ym:s:robotPercentage"
dimensions <-"ym:s:UTMSource"
api_request <-paste("https://api-metrika.yandex.ru/stat/v1/data.csv?id=",counterID,"&date1=",date1,"&date2=",date2,"&metrics=",metrics,"&dimensions=",dimensions,"&oauth_token=",appToken,sep="")
chem <-read.csv(file=api_request, encoding = "UTF-8")
filename <-paste("yandexbots_",date1,".xlsx",sep="")
write.xlsx(chem, file=filename)
textofbody <-paste ("Добрый день! Направляю отчетность по роботности за ", date1, sep="")
send.mail(from = "your_email@gmail.com",
to = "example@gmail.com",
subject = "Роботность",
body = textofbody,
encoding = "utf-8",
smtp = list(host.name = "smtp.gmail.com", port = 465, user.name = "your_email@gmail.com", passwd = "здесь пароль", ssl = T),
authenticate = TRUE,
send = TRUE,
attach.files = filename,
file.names = filename,
debug = TRUE)
* Если R-Studio ругается на xlsx, то идем по ссылке и скачиваем соответствующую версию java www.java.com/en/download/manual.jsp [5]
** доступные метрики и группировки — можно посмотреть здесь [6]
3.2. Идем в свой аккаунт Gmail и даем разрешение на взаимодействие с «ненадежными приложениями» (иначе письмо не отправится)
myaccount.google.com/u/4/security?hl=ru&pageId=none#connectedapps [7]
3.3. Настраиваем расписание отправки:
3.4 Проверяем планировщик заданий (Панель управления ->Расписание выполнения задач)
Если задание есть, но письмо не отправляется — открываем свойства задания, вкладку «Действия» -> Изменить -> ставим 1 в конце строки
Автор: OMD_Annalect
Источник [8]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/yandeks-metrika/263528
Ссылки в тексте:
[1] актуальную версию R: https://cran.r-project.org/bin/windows/base/
[2] R Studio: https://www.rstudio.com/products/rstudio/download/#download
[3] oauth.yandex.ru/client/new: https://oauth.yandex.ru/client/new
[4] oauth.yandex.ru/authorize?response_type=token&client_id=: https://oauth.yandex.ru/authorize?response_type=token&client_id=
[5] www.java.com/en/download/manual.jsp: https://www.java.com/en/download/manual.jsp
[6] можно посмотреть здесь: https://tech.yandex.ru/metrika/doc/api2/api_v1/attributes/visits/behavior-docpage/
[7] myaccount.google.com/u/4/security?hl=ru&pageId=none#connectedapps: https://myaccount.google.com/u/4/security?hl=ru&pageId=none#connectedapps
[8] Источник: https://habrahabr.ru/post/337518/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.