×
Россия +7 (495) 139-20-33

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

Россия +7 (495) 139-20-33
Шрифт:
5 13274

Недавно на 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 дня.

(Голосов: 5, Рейтинг: 5)
Читайте нас в Telegram - digital_bar

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


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • Александра
    1
    комментарий
    0
    читателей
    Александра
    больше года назад
    Доброго времени. Сейчас пытаемся запустить описанный выше скрипт.
    Используемая вами функция 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
    больше года назад
    Статья то, что нужно!
    -
    0
    +
    Ответить
  • Иван Бурмистров
    7
    комментариев
    0
    читателей
    Иван Бурмистров
    больше года назад
    И, дабы не перепечатывать код, если он кому-то понадобится, ссылка на скрипт: drive.google.com/file/d/1_quWgMHLT96Z_4yiqDhmnExOeZG_2688/view?usp=drivesdk
    -
    1
    +
    Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Кейс: как за 30 дней вывести новый сайт в ТОП выдачи Google
Сергей
2
комментария
0
читателей
Полный профиль
Сергей - Прошёл у Паши курс год назад, пытался продвигать свой сайт portativ.org.ua, но особых продвижений нет. Наверное сео уже умерло??
Облако тегов в интернет-магазине: прикладная инструкция по увеличению трафика
Юлия Дмитриева
2
комментария
0
читателей
Полный профиль
Юлия Дмитриева - Согласна с вами, что в любом деле важен индивидуальный подход:)
Специалисты в Рунете заметили глобальную накрутку поведенческих факторов
Дмитрий Кулаевский
1
комментарий
0
читателей
Полный профиль
Дмитрий Кулаевский - кто-нибудь знает как с этим бороться? очень много такого трафа идёт с июля, сайт сильно просел
Как стандартизировать данные семантики с помощью логарифмов
Юлий
1
комментарий
0
читателей
Полный профиль
Юлий - Чем снималась коммерцелизация?
Яндекс возобновил «показательные порки» за накрутку поведенческих факторов
Антон
1
комментарий
0
читателей
Полный профиль
Антон - Никакой не выпал. Кроме клиентского сайта, который проседал из-за скрутки, о чем Я.Поиску сообщали и клиенту тоже. Ноль реакции от поисковика (продолжайте развивать сайт, никаких проблем нет ...). Клиенту надоело и он заказал накрутку у подрядчиков. Мы искренне ждали бана, сообщали об этом клиенту, т.к. мы все таки делаем все остальное для развития. Как итог: с лета полет нормальный. Сайт растет, никаких проблем. Случайно даже стажер палил тех поддержке факт использования накрутки. И ничего. Сайт растет дальше. Если они не могут ничего принять даже после признания факта накрутки, что они могут сделать с жалобами на накрутку конкурентов?! Никогда не одобряли данные методы, но ... похоже ... все работает :)
От количества к качеству: что происходит с рекламой в Рунете
Евгений
1
комментарий
0
читателей
Полный профиль
Евгений - Истину глаголите!
Михаил Ляшенко (PostMarket): о рынке инфлюенс-маркетинга и рекламе у блогеров
Григорий Романченко
1
комментарий
0
читателей
Полный профиль
Григорий Романченко - Неудивительно, что все хвалят PostMarket, это действительно достойный сервис, недавно стали через них продвигать свой продукт, результаты есть, продажи выросли на 40% и это только начало.
«Нет в наличии»: что делать с карточками отсутствующего товара
freyr energy
1
комментарий
0
читателей
Полный профиль
freyr energy - Thank you so much @ admin for share your valuable thoughts and ideas We always enjoy your articles its inspired a lot by reading your articles day by day. So please accept my thanks and congrats for success of your latest series. We hope, you should published more better articles like ever before solar rooftop
15 языков программирования, за знание которых платят выше среднего
Любомир
2
комментария
0
читателей
Полный профиль
Любомир - Ну и ЗП: ни слова о том что она варируеться от 0 до 100 000$ в год!!! Что до высокой зп надо несколько лет етим заниматся! Что 100 000$ в год на западе заробатывают, а где нибудь в азиатских страннах 100$ в год. В СНГ первые годы в разработчика ЗП как в грузчика на складе - это где то 4-5 тыс. долларов в год, и уже имея несколько лет опыта возможно дойти до 10-20 тыс. долларов в год! Почему нет конкретики? Меня лично нервирует то что людям внушают великие ЗП в АйТи, а люди тупые и ведутся!!!!
Яндекс тестирует оценки сайта в сниппете
Сергей Демин
8
комментариев
0
читателей
Полный профиль
Сергей Демин - вопрос такой: где получить оценку о сайте? а не об организации
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
384
Комментариев
373
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
141
Комментариев
121
Комментариев
113
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
92
Комментариев
80
Комментариев
77
Комментариев
67
Комментариев
60
Комментариев
60
Комментариев
59
Комментариев
57

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