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

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

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

Недавно на 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
Как выбрать CMS для интернет-магазина
Колян Гусляков
2
комментария
0
читателей
Полный профиль
Колян Гусляков - Если же у вас не получилось решить данную проблему, предлагаю воспользоваться авторской сборкой от neoseo. neoseo.ru/internet-magazin-seo-magazin-model. Они предоставляют дополнительные модули для работы и взаимодействия с вашим сайтом, современный дизайн, качественную оптимизацию и продвижение. Советую попробовать, не пожалеете.
«Юзабилити-лаборатория»: оставляйте заявку на участие!
Анна Макарова
378
комментариев
0
читателей
Полный профиль
Анна Макарова - Антон, добрый день! Ваш сайт не попал в основную выборку для юзабилити-анализа, но эксперты постараются сделать по вашему сайту видеоразбор (ю-ревью). Будем держать вас в курсе )
Тест по SEO – проверь свой уровень знаний
Артем Дорофеев
8
комментариев
0
читателей
Полный профиль
Артем Дорофеев - Полный текст вопроса со скриншотом панели прикладываю. Итого, что имеем: - на скриншоте отмечено, что это фильтр МПК - сайт коммерческий - рекламы на сайте нет С вероятностью 95% это ошибка (которая уже дважды случалась в Яндексе), когда они случайно "закосили" неповинные сайты. Тогда по запросу Платону фильтр быстренько снимали. Но вопрос даже не на знание этого нюанса. В любой непонятной ситуации, прежде чем что-либо предпринимать (особенно переписывать весь контент на сайте или менять дизайн, как указано в других вариантах) - фильтр следует подтвердить. Правильный ответ: "Написать письмо в техподдержку Яндекса".
Выбираем CMS для сайта с точки зрения SEO: базовые требования
SEO.RU
6
комментариев
0
читателей
Полный профиль
SEO.RU - Спасибо за замечание, действительно была допущена неточность - возможно информация была не так давно обновилась. Данные в статье поправим на актуальные.
Автоматические SEO-аудиты: как напугать некорректными выводами
Trydogolik
25
комментариев
0
читателей
Полный профиль
Trydogolik - спасибо
Зачем подменять контент на сайте: разбираем инструмент и развенчиваем мифы
Trydogolik
25
комментариев
0
читателей
Полный профиль
Trydogolik - К мифу 1 добавлю Google optimize optimize.google.com Удобен для сотрудников со спец. знаниями и без них. Подмена контента настраивается за счет многих вариантов страниц и условий настроек распределения трафика. Варианты страниц можно легко создать копипастом. На мой взгляд удобно и бесплатно. Тот же Calibri и программисты в любом случае, пусть не за это, но где-то берут свою комиссию. (чисто мое мнение). В качестве цены отдаешь такой ресурс как личное время и копейки за внесение двух первоначальных изменений в html шаблон страниц. Но если ваша digital-кампания имеет совесть то оплата максимум час, а то и бесплатно. Интернет-маркетолог сам должен уметь это делать. Все просто + подробную инструкцию прилагают на языке пользователя. + за поддомены платить не надо, они вообще не нужны. + взаимодействие с: - Google Ads; - Google Tag; - Google Analytics просто прекрасно отслеживается по всем вариантам параллельно. Это помогает до деталей нарисовать профиль ЦА по любому "кредиту - отдельно на машину и отдельно на бизнес". Что с аналитикой у Calibri на этот счет? Сам с Calibri не разу не работал, всегда работаю с первоисточником. + к мифу 3 в том что это и есть детище поисковой системы и рекламного инструмента. Яша тоже спокоен будет так как сам везде навязывает Турбо-страницы (считаю их не удобными).- Как "-" (минус) вижу то, что может повлиять на скорость загрузки сайта. Но если у вас не конструктор, а темболее Landing Page, то о скорости можно не волноваться. Но это чисто мое мнение. В остальном согласен с автором.
Монетизируйте свой сайт вместе с VIZTROM
VIZTROM
3
комментария
0
читателей
Полный профиль
VIZTROM - Добрый день! Так как мы сейчас работаем в приватном режиме, Вы врятли можете объективно оценить нашу рекламную площадку. У нас будет официальный запуск 3 марта для вебмастеров. Приглашаем Вас присоединиться к нам и лично посмотреть наш функционал.
100+ ресурсов по SEO для изучения поисковой оптимизации с нуля
Марина Ибушева
59
комментариев
0
читателей
Полный профиль
Марина Ибушева - Спасибо за добавление. Мы уже работаем над отдельным материалом про курсы, потому что одной статьи мало, чтобы охватить все крутое по обучению)
7 способов увеличить авторитетность сайта «в глазах» поисковых систем
Grigo5
4
комментария
0
читателей
Полный профиль
Grigo5 - Понятно.
SEO must go on! Почему в кризис нельзя останавливать продвижение сайта
everystraus
0
комментариев
0
читателей
Полный профиль
everystraus - Мы даже варианты не рассматривали. Если проект неустойчив, сразу предлагали сбавить обороты до минимума, но и так, чтоб не свалиться в штопор. Именно по СЕО чаще всего.
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
378
Комментариев
373
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
140
Комментариев
121
Комментариев
111
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
88
Комментариев
80
Комментариев
77
Комментариев
67
Комментариев
60
Комментариев
59
Комментариев
59
Комментариев
57

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