Строительство

  Технология "Теплый дом" позволяет возводить объекты нового качества за счет использования несъемной опалубки из промышленного пенополистирола (пенопласта). Компания "Термодом" - первый в Крыму и Севастополе производитель термоблоков и листового пенопласта, использующихся в строительстве по технологии "Теплый дом".

  В любое время года - ровная температура поверхности стен снижает движение воздуха внутри помещения. Высокая теплоизоляционная способность термоблоков создает тепло в зимнее время и освежающую прохладу летом.


    • Имя:
    • Пароль:
    • Забыли?

Главная Новости

API и автоматизация сбора данных

Опубликовано: 27.05.2026

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

Основы API для SEO-данных

Что такое API и зачем оно нужно SEO-специалисту

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

Женщина-специалист анализирует данные через API на современном рабочем месте с абстрактной визуализацией данных

Без API вы открываете сервис, ждёте загрузки отчёта, нажимаете «Экспорт в CSV», скачиваете файл, очищаете его и подгружаете в свою таблицу. С API весь этот цикл выполняется кодом за секунды. При работе с десятками проектов и тысячами запросов разница становится критичной.

Обзор API популярных SEO-сервисов

Большинство коммерческих SEO-платформ предоставляют доступ к своим данным через API. Условно их можно разделить на три группы:

  • Панели вебмастеров — Google Search Console API и Яндекс.Вебмастер API. Дают данные о реальном присутствии сайта в поиске, кликах и показах.
  • Специализированные SEO-сервисы — Serpstat, Ahrefs, SE Ranking, Similarweb. Предоставляют данные о позициях, обратных ссылках, видимости конкурентов.
  • Универсальные платформы — DataForSEO, SerpApi. Спроектированы именно как источники данных для программного доступа, а не как интерфейсные сервисы.

Как получить API-ключ для SEO-сервиса

Алгоритм получения ключа у большинства сервисов одинаков:

  1. Зарегистрируйтесь в сервисе и подтвердите почту.
  2. Перейдите в раздел настроек профиля или в блок для разработчиков — обычно он называется «API», «Интеграции» или «Для разработчиков».
  3. Сгенерируйте ключ. Некоторые сервисы выдают его сразу, другие требуют привязки платёжной карты.
  4. Сохраните ключ в безопасном месте. При утере его придётся перевыпускать, а старый перестанет работать.

Ключ — это ваша идентификация. Не публикуйте его в открытых репозиториях и не передавайте третьим лицам: все запросы будут списываться с вашего аккаунта.

Лимиты и тарификация API SEO-сервисов

Почти все провайдеры API работают по модели «плати за объём». Форматы тарификации различаются:

Тип тарификации Пример сервиса Как считается
За строку данных Serpstat Каждая строка в ответе — одна единица. Запрос вернул 50 строк — списано 50 единиц.
За запрос Ahrefs Один вызов эндпоинта — одна единица, независимо от объёма ответа.
За 1000 запросов DataForSEO Фиксированная цена за тысячу обращений к конкретному эндпоинту.

Лимиты также ограничивают частоту обращений — requests per minute (RPM) или requests per second (RPS). Превышение лимита приводит к ошибке 429 (Too Many Requests). При проектировании автоматизации всегда закладывайте паузы между запросами или используйте механизмы повторных попыток с экспоненциальной задержкой.

Google Search Console API

Как подключить GSC API

Для работы с GSC API используется стандарт Google Cloud. Последовательность такая:

  1. Откройте консоль Google Cloud и создайте проект.
  2. Включите Google Search Console API в разделе «Библиотека API».
  3. Создайте учётные данные — выберите «Сервисный аккаунт». Система сгенерирует email вида [email protected].
  4. Скопируйте JSON-файл с ключом — он понадобится для авторизации в скрипте.
  5. В Google Search Console добавьте этот email как владельца или пользователя с правами на чтение для нужного ресурса.

Без последнего шага скрипт получит ошибку 403 — сервисный аккаунт не имеет доступа к данным сайта.

Запрос данных о позициях через GSC API

Основной метод для получения позиций — searchanalytics.query. В теле запроса указываются:

  • startDate и endDate — период в формате YYYY-MM-DD.
  • dimensions — по каким срезам группировать данные: page, query, country, device.
  • rowLimit — максимальное количество строк в ответе (до 25 000 за запрос).
  • dimensionFilterGroups — фильтры, например, только мобильный трафик или конкретная страница.

GSC не отдаёт точную позицию для каждого запроса в каждый день — он возвращает агрегированные данные за выбранный период. Если вам нужна динамика по дням, запрашивайте данные пократно по одному дню.

Скрипт для автоматического сбора данных из GSC

Пример на Python с использованием библиотеки google-api-python-client:

from google.oauth2 import service_account

from googleapiclient.discovery import build

SCOPES = ['https://www.googleapis.com/auth/webmasters.readonly']

SERVICE_ACCOUNT_FILE = 'credentials.json'

credentials = service_account.Credentials.from_service_account_file(

    SERVICE_ACCOUNT_FILE, scopes=SCOPES)

service = build('searchconsole', 'v1', credentials=credentials)

request = {

    'startDate': '2024-01-01',

    'endDate': '2024-01-31',

    'dimensions': ['query', 'page'],

    'rowLimit': 5000

}

response = service.searchanalytics().query(

    siteUrl='https://example.com', body=request).execute()

for row in response.get('rows', []):

    print(row['keys'][0], row['position'], row['clicks'])

Скрипт выводит запрос, среднюю позицию и количество кликов. Для реальной задачи вместо print добавьте запись в базу данных или Google Sheets.

GSC API в связке с Google Apps Script

Если вы не хотите разворачивать Python-окружение, Google Apps Script позволяет работать с GSC API напрямую из браузера. Преимущество подхода — не нужно создавать сервисный аккаунт: скрипт авторизуется от имени текущего пользователя, у которого есть доступ к GSC.

Практический сценарий: скрипт раз в сутки забирает топ-100 запросов по кликам за вчера и дописывает их в таблицу с датой. Так формируется исторический ряд, которого нет в стандартном интерфейсе GSC.

Обработка больших объёмов данных через GSC API

Ограничение в 25 000 строк за один запрос создаёт проблему для крупных сайтов. Решение — постраничная выборка с параметром startRow. Скрипт делает первый запрос с startRow=0, затем проверяет, вернулся ли ответ на 25 000 строк. Если да — делает следующий запрос с startRow=25000, и так до тех пор, пока объём ответа не станет меньше лимита.

Второе ограничение — GSC хранит детальные данные только за последние 16 месяцев. Для более глубокой истории данные нужно было собирать заранее и хранить в собственном хранилище.

API сервисов проверки позиций

Serpstat API: как получить данные о позициях

Serpstat API работает по принципу «одна строка ответа — одна единица расхода». Для получения позиций используется метод positions. Для связки с основной темой полезно держать рядом контекст в материале «Ручные методы проверки позиций», где материал рассмотрен шире. В запросе передаётся домен, ключевые слова (по одному или пачкой через запятую) и регион поиска.

Ответ содержит позицию, URL найденной страницы, видимость по запросу и конкуренцию. Если страница не найдена в топ-100, Serpstat возвращает пустое значение позиции — это позволяет отличить «не в топе» от ошибки запроса.

Ahrefs API: отслеживание позиций программно

Ahrefs тарифицирует API по количеству вызовов, а не строк. Метод keywords.get_positions возвращает позиции отслеживаемых ключевых слов для подключённого проекта. Особенность — через API Ahrefs можно управлять списком отслеживаемых ключей: добавлять, удалять, обновлять теги.

Это удобно, когда вы автоматизируете не только сбор данных, но и само формирование семантического ядра для мониторинга. Минус — высокая стоимость каждого вызова по сравнению с конкурентами.

SE Ranking API: автоматизация мониторинга

SE Ranking предлагает один из наиболее сбалансированных по цене API. Метод positions отдаёт позиции по проекту с фильтрацией по дате, поисковой системе и группе ключевых слов. Дополнительно доступны методы для получения истории изменений позиций — это избавляет от необходимости хранить историю на своей стороне.

Сравнение возможностей API разных SEO-сервисов

Критерий Serpstat Ahrefs SE Ranking
Тарификация За строку За запрос За запрос
История позиций через API Ограничена Доступна Доступна
Управление списком ключей Нет Да Да
Минимальная стоимость входа Низкая Высокая Средняя

Выбор зависит от задачи. Если нужно дёшево собрать срез позиций по тысячам запросов — Serpstat. Если строите полноценную систему мониторинга с управлением ключами — SE Ranking или Ahrefs.

Автоматизация через скрипты

Парсинг позиций через Python

Базовый цикл работы с любым SEO API на Python выглядит так:

  1. Формируете список запросов или URL для проверки.
  2. В цикле отправляете запросы к API с паузой между итерациями.
  3. Обрабатываете ответ: извлекаете нужные поля, проверяете ошибки.
  4. Сохраняете результат в CSV, базу данных или отправляете в Google Sheets.

Критически важный элемент — обработка ошибок. Сетевые таймауты, лимиты API, невалидные запросы — всё это случается регулярно. Скрипт должен логировать ошибки и повторять неудачные запросы, а не падать на середине.

Автоматическая проверка позиций через Google Sheets

Google Apps Script позволяет создать полноценную систему мониторинга без сервера. Функция UrlFetchApp.fetch() отправляет HTTP-запрос к API, ответ парсится из JSON, данные пишутся в лист таблицы.

Триггер времени запускает скрипт ежедневно в заданный час. В результате вы получаете таблицу, где каждый день добавляется новая колонка с позициями — готовый инструмент для отслеживания динамики без сторонних дашбордов.

Скрипт для ежедневного мониторинга позиций

Надёжный скрипт мониторинга должен включать:

  • Чтение списка запросов из отдельного листа таблицы или базы данных.
  • Пакетную отправку — если API поддерживает передачу нескольких запросов за один вызов, используйте это для экономии лимитов.
  • Запись с датой — каждая порция данных помечается текущей датой для построения временных рядов.
  • Уведомление об ошибках — если скрипт не смог собрать данные, отправляется письмо или сообщение в мессенджер.

Как настроить автоматическую отправку отчётов о позициях

После сбора данных их нужно донести до заказчика или команды. Варианты:

  • Email — Google Apps Script умеет формировать и отправлять письма с вложением CSV или с таблицей прямо в теле письма.
  • Telegram — через Bot API отправляйте краткую сводку: сколько запросов выросло, сколько упало, среднее изменение.
  • Slack — вебхук позволяет отправить сообщение в канал с результатами проверки.

Для еженедельных отчётов достаточно email. Для оперативного мониторинга критичных запросов — Telegram или Slack.

Использование Selenium для парсинга поисковой выдачи

Selenium запускает реальный браузер и может обрабатывать страницы, где контент подгружается JavaScript. Это актуально, когда обычный HTTP-запрос возвращает пустую страницу вместо реальной выдачи.

Минимум рабочего кода: инициализация драйвера Chrome, переход по URL поиска, ожидание загрузки результатов, извлечение элементов через CSS-селекторы. Но Selenium тяжёлый — один запрос занимает несколько секунд и потребляет много оперативной памяти. Для массового сбора позиций это неэффективно, лучше использовать специализированные API или библиотеки типа httpx с подстановкой правильных заголовков.

Инструменты автоматизации

Zapier и Make для автоматизации SEO-данных

Make (бывший Integromat) и Zapier позволяют связывать сервисы без кода. Типичный сценарий для SEO: по расписанию вызывать API сервиса позиций, обрабатывать ответ и записывать данные в Google Sheets или отправлять уведомление.

Make выгоднее для SEO-задач: он показывает объём потреблённых операций точнее, поддерживает сложную логику ветвления и работает с JSON на уровне визуальных модулей. Zapier проще в настройке, но при больших объёмах данных выходит значительно дороже.

Автоматизация сбора данных через n8n

n8n — это open-source аналог Make, который разворачивается на собственном сервере. Главное преимущество — нет оплаты за каждую операцию. При сборе данных по сотням тысяч запросов в месяц разница в стоимости может достигать сотен долларов.

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

Настройка автоматических дашбордов для позиций

Собранные через API данные теряют ценность без визуализации. Практичные варианты:

  • Google Data Studio (Looker Studio) — подключается напрямую к Google Sheets, где складываются данные. Быстро настраивается, бесплатно, но тормозит на больших объёмах.
  • Metabase — подключается к базе данных (PostgreSQL, MySQL). Быстрее работает с большими массивами, но требует настройки базы.
  • Grafana — мощный инструмент для временных рядов, избыточен для простой задачи отслеживания позиций, но удобен при комплексном мониторинге.

Для большинства задач достаточно связки «скрипт собирает данные в Google Sheets → Looker Studio строит дашборд».

Планировщики задач для регулярного сбора SEO-данных

Скрипт не будет работать автоматически без планировщика. Варианты:

  • Cron — стандартный планировщик на Linux-серверах. Строка 0 8 * * * запускает скрипт ежедневно в 8:00.
  • Google Apps Script Triggers — для скриптов внутри экосистемы Google. Настраивается в интерфейсе без доступа к серверу.
  • GitHub Actions — бесплатный вариант для Python-скриптов. Скрипт лежит в репозитории, workflow запускается по расписанию. Ограничение — время выполнения одного job не более 6 часов, для типичных SEO-задач этого достаточно.

Парсинг поисковой выдачи

Что такое парсинг поисковой выдачи и когда он нужен

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

  • Вы хотите проверить позиции, не платя за API коммерческих сервисов.
  • Вам нужны данные, которые недоступны через стандартные API: формат сниппета, наличие sitelinks, тип SERP-фичи.

Для регулярного мониторинга позиций парсинг — худший выбор по соотношению стабильности и затрат. Но для разовых исследований он оправдан.

Инструменты для парсинга выдачи Google

  • SerpApi — платный сервис, который парсит выдачу за вас и отдаёт структурированный JSON. Дорогой, но избавляет от проблем с блокировками.
  • Scrape-It.Cloud — похожий подход, дешевле, но меньше деталей в ответе.
  • Библиотеки Python (httpx, requests) — бесплатны, но требуют настройки заголовков, прокси и обработки капчи.

Инструменты для парсинга выдачи Яндекс

Яндекс агрессивнее борется с автоматическим сбором выдачи. Прямой парсинг через requests почти всегда приводит к капче. Рабочие варианты:

  • Selenium с прокси и задержками — имитирует поведение человека, но медленный и дорогой из-за прокси.
  • Специализированные сервисы — например, XML-выдача Яндекса (платная услуга) или сторонние парсеры, которые берут на себя решение капчи.

Риски и ограничения парсинга поисковой выдачи

  • Блокировка по IP — при частых запросах с одного адреса поисковик временно или постоянно блокирует доступ.
  • Капча — особенно у Яндекса. Автоматическое решение капчи через сторонние сервисы увеличивает стоимость и время запроса.
  • Нестабильность выдачи — результаты зависят от региона, устройства, истории поиска, времени суток. Без контроля этих параметров данные будут шумными.
  • Изменение структуры страницы — поисковик обновляет HTML-разметку, и ваш парсер перестаёт находить элементы. Требуется постоянное обслуживание.

Как обойти блокировки при парсинге выдачи

Практические приёмы, которые реально работают:

  1. Ротация прокси — каждый запрос идёт с нового IP. Используйте резидентные прокси, а не дата-центровые — поисковики их легко распознают.
  2. Случайные задержки — пауза между запросами от 3 до 15 секунд с рандомизацией.
  3. Реалистичные заголовки — User-Agent, Accept-Language, Accept должны соответствовать реальному браузеру.
  4. Лимитация запросов с одного IP — не более 10–20 запросов в час на одну конечную точку.

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

Парсинг сниппетов и SERP-фичей

Через API сервисов позиций вы получаете номер позиции и URL. Через парсинг выдачи можно получить то, чего нет в стандартных ответах:

  • Текст заголовка и описания в сниппете.
  • Наличие расширенных сниппетов: быстрые ответы, карточки товаров, видео.
  • Порядок sitelinks.
  • Рекламные блоки и их количество над органикой.

Эти данные нужны для анализа SERP-конкуренции и оптимизации сниппетов. Если задача разовая — используйте SerpApi или аналоги. Если регулярная — закладывайте бюджет на API, потому что самостоятельный парсинг SERP-фичей требует постоянного сопровождения парсера.

Реклама

Реклама

Архивы

Реклама

Реклама
Все права защищены © 2010-2016 . Копирование материалов запрещено.