Дмитрий Фёдоровperformance-маркетолог Обсудить сайт
Кейс Яндекс ДиректМониторингАвтоматизация

Позиции рекламы, когда капча победила скрейп

Клиенту нужно видеть, где стоит его реклама в Яндексе. Скрейп выдачи за неделю попал под капчу и в 74 % прогонов возвращал сбой. Тогда я перестал смотреть на выдачу снаружи и взял позиции у самого Директа, через API.

Ниша
Окна и балконы
Регион
Ярославль
Инструмент
API Директа, Python
Период замеров
16.07 по 06.10
74%
прогонов скрейпа вернули сбой капчи, 270 из 363
1130
часовых замеров из API Директа без капчи
78
дней непрерывных данных с 16.07
29
фраз под замером, на всех были показы 06.10

История прогонов скрейпа (history.tsv, 06.07 по 21.07.2026) и часовой журнал замеров из API Директа (direct_positions.log, 16.07 по 06.10.2026).

Точка старта

Что хотел клиент

Было

Первая версия: скрейп выдачи

  • С 06.07 браузер Chromium каждый час открывал выдачу Яндекса по 12 высокочастотным запросам и считал позицию рекламодателя
  • SmartCaptcha проходилась кликом по чекбоксу
  • Защита от ложных сводок: если реклама не найдена ни по одному запросу, прогон считался сбоем, а не реальностью
  • Для ложных тревог это сработало, для самих замеров нет
Стало

Вторая версия: ответ даёт сам Директ

  • С 16.07 позиции читаются из API Директа, без скрейпа
  • Один запрос в час даёт объём трафика, показы, клики, CTR, цену клика и расход по каждой фразе
  • Капчи нет, потому что ходит не браузер, а клиент API
  • Данные попадают на вкладку «Позиции в рекламе» дашборда клиента

Задача

Видеть, где стоит реклама, каждый час

Компания по окнам и балконам в Ярославле хотела следить за положением своей рекламы по 12 запросам окна и балконы, чтобы понимать, когда реклама пропадает из верхних блоков. На старте, 6 июля, реклама показывалась по одному запросу из двенадцати.

Нужен замер, который не ломается от капчи и не шлёт ложных сводок.

Решение

Что сделали

01

Скрейп с защитой от капчи

Первая версия, 06.07

Chromium под виртуальным экраном проходил капчу и определял позицию по домену в рекламном блоке. Прогон без рекламы по всем запросам не затирал последнюю хорошую запись и не слал сводку.

02

Диагноз проблемы

Капча на всех IP

С 12.07 SmartCaptcha перестала пропускать скрейпер на всех IP наших серверов. По истории из 363 записей 270 оказались сбоями, последний успешный снимок датирован 16.07.

03

Позиции из API

Объём трафика вместо номера в блоке

Директ отдаёт позицию как объём трафика: около 100 это верх премиум-блока, 5 это низ, шкала аукциона тянется примерно до 139. Скрипт каждый час берёт значения по каждой фразе и сохраняет историю.

04

Лестница ставок

Аукцион по каждой фразе

Скрипт читает и аукционную лестницу ставок: какая ставка соответствует какому уровню трафика.

05

Вкладка в дашборде

Позиции в рекламе

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

Результат

Что известно на 6 октября

С 16.07 по 06.10 набралось 1 130 часовых замеров за 78 дней. Капчи в этом контуре нет. Последний замер 06.10 в 13:05: 29 фраз с показами из 29, среднее значение объёма трафика 67,6.

Чего в кейсе нет. Позиции конкурентов в выдаче так не увидеть: Директ показывает только вашу рекламу. Скрейп конкурентов остался в архиве и сегодня не работает, об этом честно написано выше. Эффекта на заявки я не заявляю: замер показывает, где стоит реклама, а не сколько денег она принесла.

Контакты

Нужно видеть позиции рекламы, а капча мешает?

Расскажете, какие запросы и какой кабинет, скажу, что можно взять из API и чего получить нельзя. Без обязательств.

Тел+7 920 652-81-81
TG@traffikstory
VKvk.com/dfedorov86
Почтаit-aston@yandex.ru
ГеоЯрославль, работаю по всей России
Связанная услуга: Яндекс Директ · Все работы: кейсы с проверяемыми результатами