Россия+7 (495) 960-65-87

Расчет трафика по небрендовым запросам при помощи R

Россия+7 (495) 960-65-87
Шрифт:
5 9746

Недавно на SEOnews вышла статья о способе расчета доли небрендового трафика из поисковых систем. В комментариях я коротко поделился своим способом получения данных, который привлек внимание читателей. Что ж, попробую рассказать о нем подробнее.

Чтобы не утруждать себя сбором данных из разных интерфейсов систем аналитики, воспользуемся замечательной R Studio. Для начала краткая справка из Википедии.

R — язык программирования для статистической обработки данных и работы с графикой, а также свободная программная среда вычислений с открытым исходным кодом в рамках проекта GNU.

Нам же потребуется минимум его возможностей.

Опустим подробности установки R и приступим к выгрузке данных. Для работы нам понадобятся следующие библиотеки:

Расчет трафика по небрендовым запросам при помощи R

Загружаем и устанавливаем их один раз. При последующих запусках эта часть скрипта нам не понадобится. RGoogleAnalytics была удалена из CRAN, но есть ее архив, который можно вручную распаковать в нужную директорию. Ссылка на библиотеку: https://github.com/Tatvic/RGoogleAnalytics (тут же можно будет найти всю необходимую документацию по формированию запросов).

Подключаем установленные библиотеки:

Расчет трафика по небрендовым запросам при помощи R

Lubridate присоединяется автоматически.

Чтобы появилась возможность выгружать из Google Search Console более 5000 рядов, прописываем следующие опции для библиотеки:

Расчет трафика по небрендовым запросам при помощи R

Далее нужно получить client id и client secret для работы с API Google Analytics. Для этого нужно зарегистрировать свое приложение тут.

Расчет трафика по небрендовым запросам при помощи R

Запишем даты в переменные, которые будут далее использоваться во всех запросах к API (формат – YYYY-NN-DD). При последующей работе в идеале нужно будет задавать только их:

Расчет трафика по небрендовым запросам при помощи R

Формируем запрос к API Яндекса. По сути, это обычный GET запрос.

В 36 строке необходимо указать номер счетчика метрики.

В 42 строке – регулярное выражение, исключающее брендовые запросы, где маски разделяются вертикальной чертой. Например ‘бренд|brand|брэнд’

В 43 строке нужно вставить токен. Инструкции по получению токена можно найти тут.

Расчет трафика по небрендовым запросам при помощи R

Далее несколько простых манипуляций, при помощи которых мы обрабатываем полученные данные по небрендовому трафику Яндекса и сумму записываем в переменную «х».

Часть этих шагов нужна, чтобы была возможность просмотреть промежуточный результат.

Расчет трафика по небрендовым запросам при помощи R

Переходим к выгрузке данных из Google Analytics. Ранее мы уже сохраняли токен. Теперь мы его загружаем и проверяем валидность.

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

Расчет трафика по небрендовым запросам при помощи R

Делаем запрос к API и записываем данные в датафрейм. Настройка split_daywise = T позволяет выгружать данные по дням, что исключает семплинг.

Расчет трафика по небрендовым запросам при помощи R

Суммируем сессии из Яндекса в переменную «y» и объединяем их с «x» в одном датафрейме.

Расчет трафика по небрендовым запросам при помощи R

Переходим к данным из Google Search Console.

Авторизуемся, при помощи функции scr_auth формируем запрос к API. Для dimensionFilterExp нужно каждую маску указывать как отдельный фильтр. Например: dimensionFilterExp =c(‘query!~бренд’, ‘query!~brand’, ‘query!~брэнд’). Документацию по формированию таких запросов можно найти тут.

Расчет трафика по небрендовым запросам при помощи R

Суммируем небрендовые запросы Google и записываем их в переменную x_sum.

Расчет трафика по небрендовым запросам при помощи R

Аналогично органическому трафику из Яндекс выгружаем сессии из Google. Их сумму записываем в переменную y_sum:

Расчет трафика по небрендовым запросам при помощи R

Еще несколько простых действий, в которых мы объединяем все наши данные в одну табличку:

Расчет трафика по небрендовым запросам при помощи R

На выходе получаем следующее:

Расчет трафика по небрендовым запросам при помощи R

Можно прямо в R посчитать долю в процентах, но мне нужны данные в выгрузке именно в таком виде.

Далее прописываем путь к файлу и формируем его название. И, собственно, сохраняем файл в xlsx.

Расчет трафика по небрендовым запросам при помощи R 16.png

Важно помнить, что этот метод тоже не дает абсолютно точный результат. Данные в том же Google Search Console по кликам достаточно ощутимо отличаются от данных по трафику google / organic. Скрипт просто позволяет достаточно быстро собрать данные из разных интерфейсов, обработать их и выдать результат.

Также стоит обратить внимание на то, что данные в GSC обновляются с задержкой в 2–3 дня.

(Нет голосов)
Читайте нас в Telegram - digital_bar

Есть о чем рассказать? Тогда присылайте свои материалы Даше Калинской


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • Александра
    1
    комментарий
    0
    читателей
    Александра
    6 месяцев назад
    Доброго времени. Сейчас пытаемся запустить описанный выше скрипт.
    Используемая вами функция read.csv не может обратиться по ссылке с , она работает только с http. Поэтому пришлось запрашивать данные RCurl (версия R 3.4.4)
    Так же, при попытке запросить данные метрики, используя библиотеку Curl (а так же других библиотек и даже другого языка) приходит 400 ошибка, так как ! в адресе - это служебный символ, который не может быть обработан консолью. Причем экранировать ...
    Доброго времени. Сейчас пытаемся запустить описанный выше скрипт.
    Используемая вами функция read.csv не может обратиться по ссылке с , она работает только с http. Поэтому пришлось запрашивать данные RCurl (версия R 3.4.4)
    Так же, при попытке запросить данные метрики, используя библиотеку Curl (а так же других библиотек и даже другого языка) приходит 400 ошибка, так как ! в адресе - это служебный символ, который не может быть обработан консолью. Причем экранировать его в ссылке, как и поставить другие кавычки в самом адресе, чтобы консоль видела, что символ - часть ссылки - Яндекс не дает.
    Аналогичная ситуация в Linux (Ubuntu) и Windows.
    Не подскажете ли, как удалось решить проблему или она у вас не возникала? =)
    -
    0
    +
    Ответить
    • Иван Бурмистров
      7
      комментариев
      0
      читателей
      Александра, к счастью, у меня такой ошибки не возникало. Скажите, пожалуйста, Вы пытались отправить этот запрос к метрике просто через строку браузера? Есть вероятность, что проблема не в read.csv, а в самом формировании запроса где-то закралась ошибка.
      -
      0
      +
      Ответить
  • Fartos
    6
    комментариев
    0
    читателей
    Fartos
    6 месяцев назад
    Статья то, что нужно!
    -
    0
    +
    Ответить
  • Иван Бурмистров
    7
    комментариев
    0
    читателей
    Иван Бурмистров
    6 месяцев назад
    И, дабы не перепечатывать код, если он кому-то понадобится, ссылка на скрипт: drive.google.com/file/d/1_quWgMHLT96Z_4yiqDhmnExOeZG_2688/view?usp=drivesdk
    -
    1
    +
    Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Рейтинг Известности 2018: старт народного голосования
Михаил Р
1
комментарий
0
читателей
Полный профиль
Михаил Р - 1. Demis 2. кокс 3. Ашманов 4. Скобеев 5. Digital Strategy
Сколько ссылок помогут продвинуть молодой сайт
Павел Андрейчук
21
комментарий
0
читателей
Полный профиль
Павел Андрейчук - Дело в том, что вряд ли в ваших платных "качественных" кейсах найдётся хоть пару % действительно новой и полезной информации которой бы не было на общедоступных источниках.
Рейтинг Известности 2018: второй этап народного голосования
Константин Сокол
3
комментария
0
читателей
Полный профиль
Константин Сокол - Кто был ответственный за дизайн таблицы голосования? Копирайтер?
Кейс: вывод лендинга по изготовлению флагов на заказ в ТОП 1 по Санкт-Петербургу
utka21
5
комментариев
0
читателей
Полный профиль
utka21 - Кейс как кейс. Для некоторых станет вполне возможно полезным. ( Для конкурентов точно) . А вот с комментариями , что то пошло не так )
Google обошел Яндекс по популярности в России в 2018 году: исследование SEO Auditor
Рамблер
1
комментарий
0
читателей
Полный профиль
Рамблер - Вот вроде отечественный - это сказано верно.. «Я́ндекс» — российская транснациональная компания, зарегистрированная в Нидерландах. Так говорится в Википедии. И с хрена ли ОТЕЧЕСТВЕННЫЙ поисковик зарегистрирован в Европе? И где платится основная часть налогов? Ну-ууу, точно не в России. И если запахнет жаренным, то был Яндекс и нет Яндекса!
Обзор популярных CMS: плюсы и минусы
Гость
1
комментарий
0
читателей
Полный профиль
Гость - У Битрикса техническое seo сильно страдает, чтоб оно там было нормальным придется все переделать. Безопасность у Битрикса тоже низкая, особено если надо дорабатывать функционал, как только правиться функционал у Битрикс , то уровень ее безопасности определяет тот разработчик , который этим занимается. Самые безопасные движки те, что нет в общем доступе и где нельзя ничего редактировать в коде. =)
Как использовать Python для LSI-копирайтинга
Evgeny Montana
6
комментариев
0
читателей
Полный профиль
Evgeny Montana - спасибо)
Инструкция: настраиваем цели Яндекс.Метрики через Google Tag Manager
Roman Gorkunenko
1
комментарий
0
читателей
Полный профиль
Roman Gorkunenko - Здравствуйте. Подскажите, пожалуйста, можно с айпи метрики вытащить среднюю стоимость клика по утм меткам? В метрике есть такой шаблон tags_u_t_m, но он не совместим с меткой директа, у них разные префиксы.
Стартовал сбор заявок на участие в рейтинге «Известность бренда SEO-компаний 2018»
Артем Первухин
1
комментарий
0
читателей
Полный профиль
Артем Первухин - Make KINETICA Great Again!
Аудит структуры интернет-магазина мебели от «Ашманов и партнеры»
Дмитрий
8
комментариев
0
читателей
Полный профиль
Дмитрий - Сергей, а вы допускаете, что вся ваша жизнь - seo-миф?
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
373
Комментариев
342
Комментариев
262
Комментариев
243
Комментариев
171
Комментариев
156
Комментариев
137
Комментариев
121
Комментариев
99
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
80
Комментариев
67
Комментариев
67
Комментариев
60
Комментариев
59
Комментариев
57
Комментариев
55
Комментариев
54

Отправьте отзыв!
Отправьте отзыв!