Вордстат API (Wordstat): частотность запросов
· Вордстат · семантика
Пока в семантике сотня запросов, частотность можно снимать руками: открыл Вордстат, вбил, записал. На тысяче запросов это уже день монотонной работы с капчами, а десять тысяч съедят неделю, после которой цифры устареют раньше, чем вы их дособираете. Дальше либо десктопный софт с пачкой аккаунтов и прокси, либо API.
У нас частотность отдаёт метод /api/wordstat: обычный GET-запрос, JSON в ответ, 0.01 ₽ за запрос. Никаких аккаунтов Яндекса, прокси и разгадывания картинок со светофорами.
Чем плох ручной съём, кроме скорости
Дело не только в потраченном времени. Частотность - это величина, с которой вы потом будете работать: сортировать ядро, группировать, решать, какие страницы делать в первую очередь. Когда цифры собираются руками неделю, первая и последняя сняты в разных условиях, а пара опечаток при переносе в таблицу гарантирована. Скрипт снимает всё ядро за один прогон и кладёт результат сразу в файл, поэтому сравнивать такие данные между собой можно честно.
Ну и повторяемость. Семантику мало собрать один раз: спрос сезонный, и частотку по живым разделам стоит пересматривать хотя бы раз в квартал. С API это перезапуск скрипта, а не ещё одна неделя рутины.
Как выглядит запрос и ответ
В минимальном варианте нужны ключ и фраза:
https://jsonseo.ru/api/wordstat?key=ВАШ_КЛЮЧ&text=ремонт айфона
В ответе три вещи: суммарная частотность фразы, список популярных запросов с этим словом и похожие запросы (в веб-интерфейсе это правая колонка).
{
"text": "ремонт айфона",
"results": {
"totalValue": 128929,
"popular": [
{ "text": "ремонт айфонов", "value": 128927 },
{ "text": "сколько ремонт айфона", "value": 8365 }
],
"associations": [
{ "text": "починить телефон", "value": 30546 }
]
}
}
Если задача просто снять частотку по готовому списку, хватает totalValue. А полные списки
popular и associations отдаются сразу целиком - это пригодится, когда вы наоборот
расширяете ядро. Пагинации нет: один запрос - все данные, фиксированные 0.01 ₽.
Регионы и устройства
По умолчанию частотность считается по всем регионам. Параметр region принимает ID из
справочника регионов Яндекса, того же самого, что используется
при проверке позиций: у Москвы это 213, у Санкт-Петербурга 2, у Екатеринбурга 54, у Казани 43. Можно передать
несколько ID через запятую и получить суммарную цифру по ним.
https://jsonseo.ru/api/wordstat?key=ВАШ_КЛЮЧ&text=ремонт айфона®ion=213
Для регионального бизнеса это не опция, а необходимость. «Ремонт айфона» по всей России и по одному Екатеринбургу дают два разных числа, и продвигаться вы будете под второе. Как устроена региональность с другой стороны, в самой выдаче, мы разбирали в статье про проверку позиций по регионам.
Есть и фильтр по устройствам: device=desktop,phone,tablet, по умолчанию включены все три.
Если у вас тематика с явным мобильным перекосом (доставка еды, такси), частотку по телефонам имеет
смысл смотреть отдельно.
Прогоняем список запросов
API - это просто URL, поэтому обвязка пишется на чём угодно за десять минут. Скелет на bash:
while read -r phrase; do
curl -s "https://jsonseo.ru/api/wordstat" \
--data-urlencode "key=ВАШ_КЛЮЧ" \
--data-urlencode "text=$phrase" \
--data-urlencode "region=213" -G \
| jq -r '[.text, .results.totalValue] | @tsv'
done < queries.txt > frequency.tsv
На выходе получается таблица «запрос, частотность», которую можно открыть в Excel и отсортировать. Тысяча запросов обойдётся в 10 ₽. Столько же, кстати, начисляется на баланс при регистрации, так что первую тысячу фраз вы прогоните бесплатно.
Про операторы
Фраза из параметра text уходит в Вордстат как есть, поэтому кавычки, восклицательные знаки
и минус-слова работают так же, как в веб-интерфейсе. А пользоваться ими надо: без операторов Вордстат
показывает частотность всех запросов, куда входят ваши слова в любом порядке и с любыми довесками.
Базовая цифра для общих фраз бывает выше точной в 10, а то и в 20 раз, и семантика, собранная без учёта этого,
обещает трафик, которого не существует.
Не забывайте про URL-кодирование: кавычка превращается в %22, восклицательный знак безопаснее передать
как %21, плюс кодируется как %2B. Если используете --data-urlencode из примера
выше, curl сделает это сам.
Что именно означает каждый оператор и какой набор даёт точную частотность, разобрали отдельно в статье про операторы Вордстата.
А что с официальным Wordstat API Яндекса
У Яндекса есть свой API Вордстата - он доступен в составе Yandex Search API. Формально им можно пользоваться, но на практике он упирается в инфраструктуру: нужен аккаунт Yandex Cloud, привязанный биллинг и OAuth-токен, а сам интерфейс - со своей схемой авторизации и квотами. Для задачи «снять частотку по ядру» это обвязка, которая съедает больше времени, чем сам сбор.
Наш /api/wordstat - тот же Вордстат, но без обвязки: один GET-запрос, JSON в ответ, ключ из личного кабинета. Не нужны ни аккаунт Яндекса, ни облако, ни настройка квот.
| Официальный Wordstat API | JSON SEO /api/wordstat | |
|---|---|---|
| Доступ | Yandex Cloud, OAuth-токен, биллинг | Ключ из личного кабинета |
| Интерфейс | API со своей схемой и авторизацией | Обычный GET, JSON в ответ |
| Лимиты | Квоты Yandex Cloud | Без квот - платите за запрос |
| Цена | В составе тарифов Yandex Cloud | 0.01 ₽ за запрос (10 ₽ за 1000) |
Сколько это стоит на практике
Вордстат стоит 0.01 ₽ за запрос: 10 ₽ за 1000 фраз. Типичная задача «снять точную частотку по ядру из 5000 фраз в двух вариантах, базовая и в кавычках» - это 10 000 запросов, то есть 100 ₽. Абонентской платы нет: пополнили баланс, тратите по мере надобности. Полное описание параметров лежит в документации, ключ выдаётся в личном кабинете сразу после регистрации.
Частотность - лишь один шаг работы с семантикой. Как выстроить процесс целиком, от маркеров до кластеров, разобрано в инструкции как собрать семантическое ядро.