Начните работать с нами
Оставьте заявку

API Wordstat для школьников

Многие работают с Wordstat — сервисом подбора слов от Яндекса. Кто-то пользуется им напрямую, копируя нужные слова, кто-то использует сторонние сервисы или плагины, ускоряя процесс сбора фраз, ну а кто-то решается написать собственное приложение. Об этом и статья: как сделать что-то своё для автоматизации сбора семантики с помощью вордстата.

17 ноября 2016

Для этого мы будем работать с API Директа, а именно, его частью, посвященной Яндекс Wordstat (далее WS). Если вы еще не работали с API Директа, вам будет полезно пройти официальный обучающий курс от Яндекса.

API — это интерфейс программирования, с помощью которого мы упрощаем себе жизнь и избавляемся от скучных действий: вместо рутинной работы с каким-либо сервисом, пишем программу, которая всё делает сама, работая напрямую через API.

Не будем вдаваться в подробности как происходит связь нашей программы и сервиса. Яндекс предоставляет выбор для реализации ваших решений. Мы будем работать с JSON-запросами на языке программирования Python 2.7 (далее питон). Если у вас стоит последняя версия питона, то вообще круто: расскажете потом, как работает. В тонкости можно не вникать, всё итак будет понятно.

План работы:

Устанавливаем Python

Как вариант, можно установить пакет Anaconda. Подробную инструкцию по установке пакета вы найдете здесь.

Регистрируем тестовое приложение в Директе

Затем получаем разрешение на работу с API WS. Для этого активируем песочницу и регистрируем своё тестовое приложение.

Яндекс предлагает два варианта доступа: тестовый и полный, для наших целей будет достаточно запросить тестовый доступ:

https://prnt.sc/vmt0y3

Создаем новую заявку на получение доступа к API

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

Для заполнения заявки потребуется следующая информация:

  • application_id — был получен на этапе регистрации приложения;
  • почта, по которой вы предпочитаете общаться со службой поддержки;
  • название и сайт компании (эти поля заполнять не обязательно);
  • специфика работы компании;
  • предназначение и функции приложения — нужно выбрать варианты из предложенных;
  • новые возможности работы с Директом благодаря вашему приложению — необходимо кратко расписать своими словами; наведя курсор на значок “?” вы можете посмотреть примеры формулировок;
  • ожидаемая дата окончания разработки — нужно указать точную дату, но ее строгого соблюдения никто не требует.

https://prnt.sc/vmt2lp

https://prnt.sc/vmt39q

После заполнения всех обязательных полей поставьте галочку “Согласен” в Пользовательском соглашении и отправьте заявку.

На рассмотрении заявки уходит несколько дней. До одобрения заявки сотрудниками Яндекса вы не сможете работать с приложением.

Получаем отладочный токен

По окончанию регистраций у вас на руках будет идентификатор приложения, который используется для получения отладочного токена. Заходим на сайт, но в get-параметрах дописываем   ?response_type=token&client_id=<идентификатор приложения>

Получится переход примерно по такой ссылке:
https://oauth.yandex.ru/authorize?response_type=token&client_id=fd8861b2514409888b52197dfb68a

После перехода по ссылке откроется страница с токеном, который надо скопировать и сохранить.

Токен для работы

Устанавливаем код

Ниже приводится код, позволяющий получать данные по нужным фразам и записывать новые фразы в файл. План действий:

  • скопируйте весь код;
  • создайте новый файл в IDLE или другой среде разработки;
  • вставьте код и сохраните с расширением .ру

Код доступен в этом GoogleDoc файле.

Все, что написано после #является комментарием и будет проигнорировано при выполнении. В  питоне все отступы и пробелы имеют значение, их удаление может привести к неправильной работе программы. И самое главное: не забудьте указать свой токен для работы программы!

Пример работы:

Отчёт

spyder__python_2_7_-2

В директории со скриптом будет лежать файл с полученными запросами.

Особенности работы с API Wordstat

Давайте теперь поговорим об особенностях:

  • Результаты работы парсера получаются в виде отчетов. В одном отчёте собирается информация только для 10 фраз.
  • Заказ отчёта для одной фразы стоит 10 баллов.
  • Все остальные методы, кроме формирования отчёта бесплатны.
  • Для каждой заданной фразы можно получить не более 300 фраз
  • Один пользователь за сутки может получить статистику поисковых запросов для 1000 фраз (не проверял).
  • Для одного пользователя на сервере хранится не более пяти отчетов (по всем кампаниям). При попытке сформировать шестой отчёт возвращается сообщение об ошибке с кодом 31.
  • Отчёты хранятся на сервере в течение пяти часов, а затем автоматически удаляются. Поэтому мы их удаляем сразу.
  • Как только вы получили, например, 300 фраз для 1 запроса, можете запросить ключевые слова для каждой из этих 300 шт., естественно спишется 3000 баллов. Можете построить 300 отчетов по одной фразе или 30 по 10. Получив отчёты для каждой из 300 фраз, можете копнуть ещё глубже. Для этого надо немного изменить код и , возможно, подключить дополнительные токены. Я запрашивал 300 отчетов подряд и при этом не получал бан от Яндекса.
  • При указании фразы можно использовать конструкции WS, например, (купить|цена) (хлеб|бензин) — сойдёт за одну фразу, но по ней также будет получено не более 300 фраз.
  • Если вы агентство и вам не хватает API баллов для работы всех сервисов, то дополнительные баллы можно попросить у менеджера.
  • Баллы — “валюта” за счёт которой мы работаем с API WS, если они закончатся, то придется ждать их восстановления.
  • У каждого агентства/рекламодателя есть суточный лимит API баллов, который полностью восстанавливается за 24 часа. Каждый час начисляется 1/24 от суточного лимита.
  • Помните, что другие сервисы, например Директ Commander или бидеры ставок могут также тратить ваши баллы.
    Справка по методам WS.
    Работа с файлами питона и справка
  • Для работы с WS, как мне кажется, не обязательно получать полноценный доступ к API, хватит и песочницы; можно не задумываться о требованиях.
  • Пишите в ТП API Директа: ребята всегда отвечают развернутыми ответами и дают дельные советы, не только по API, но и по самой логике программы.
  • На Github есть какой-то материал по работе с API WS на php.

Таким образом можно за быстрый срок создать своё приложение для работы с WS (особенно круто, если вы программируете или рядом есть программист). Питон выбран не случайно, проще чем с ним не будет точно. При желании код можно усовершенствовать и превратить в веб-приложение (если руки дойдут и будет интересно, то и про это появится статья).
Пробуйте! Программируйте!