Интеграция SEMrush API для SEO-аналитики сайта

Интеграция SEMrush API для SEO-аналитики сайта

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Интеграция SEMrush API для SEO-аналитики сайта
Средний
~2-3 дня

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1419
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1287
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    983
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1244
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    983
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    998

Интеграция SEMrush API для SEO-аналитики сайта

Представьте: вы ведёте SEO для 10 доменов. Каждую неделю вручную открываете SEMrush, экспортируете отчёты, склеиваете CSV в Excel. На это уходит полдня, а в данных то и дело закрадываются опечатки. Для интернет-магазина с 100 000 товаров ручной сбор позиций всех категорий практически нереален — данные устаревают быстрее, чем вы их собираете. SEMrush API решает эту проблему раз и навсегда: программно забираете позиции, органику, бэклинки и метрики конкурентов, складываете в свою базу и строите дашборд. Автоматизация через API в 24 раза быстрее ручного сбора — экономия 90% времени. Мы реализовали такие интеграции для 8 проектов, включая мониторинг 50+ доменов ежедневно. Наш стек: Python 3.11, PostgreSQL 16, Docker, Grafana. Код передаём в виде репозитория с документацией.

Почему стоит автоматизировать сбор данных?

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

Критерий Ручной сбор Автоматизация через API
Время на 5 доменов 4 часа 10 минут
Точность Ошибки копирования 0%
Частота обновления Раз в неделю Ежедневно
Сравнение конкурентов Трудоёмко Встроено

Экономия на ручном сборе данных может достигать 400 000 рублей в год для команды из 3 человек — за счёт высвобождения времени на стратегический анализ.

Как управлять расходами API units?

Расход units напрямую зависит от объёма запросов. Оптимизация: для ежедневного мониторинга достаточно запрашивать только ключевые метрики (позиции топ-200, трафик, рейтинг домена). Полный backlink-аудит запускайте раз в неделю. При тарифе Business (10 000 units/мес) можно вести 5 доменов ежедневно. Используйте кэширование — не запрашивайте одни и те же данные повторно в течение дня.

Что делать при ошибках интеграции?

API может возвращать ошибки при превышении лимита, неверном ключе или временных сбоях. Код клиента должен обрабатывать их: при статусе ERROR проводить повторную попытку с экспоненциальной задержкой. Настройте алерты в Telegram или Slack при сбое сбора данных. Это гарантирует, что пропусков метрик не будет.

Как настроить клиент для SEMrush API?

SEMrush использует API-ключ как query-параметр. Ответ по умолчанию в CSV, но для некоторых эндпоинтов доступен JSON. Базовая реализация клиента на Python выглядит так:

import requests import csv import io from typing import Literal class SemrushClient: BASE_URL = 'https://api.semrush.com' ANALYTICS_URL = 'https://api.semrush.com/analytics/v1' def __init__(self, api_key: str): self.api_key = api_key self.session = requests.Session() def _request(self, params: dict) -> list[dict]: params['key'] = self.api_key resp = self.session.get(self.BASE_URL, params=params, timeout=30) resp.raise_for_status() if resp.text.startswith('ERROR'): raise ValueError(f'SEMrush API error: {resp.text}') reader = csv.DictReader(io.StringIO(resp.text), delimiter=';') return list(reader) 

Основные эндпоинты API

Для сбора органики, конкурентов и бэклинков используем следующие методы. Сводка по затратам API units:

Метод Эндпоинт Units (100 строк) Типичные данные
Органические ключевые domain_organic 10 Позиции, трафик, URL
Конкуренты по органике domain_organic_organic 10 Пересекающиеся ключевые
Backlinks backlinks 40 Источники, Authority Score
Ранги доменов domain_ranks 10 Общие метрики

Пример получения органических ключевых слов домена:

def get_organic_keywords(self, domain: str, database: str = 'ru', limit: int = 1000) -> list[dict]: params = { 'type': 'domain_organic', 'domain': domain, 'database': database, 'display_limit': limit, 'display_sort': 'tr_desc', 'export_columns': 'Ph,Po,Pp,Nq,Tr,Ur', } return self._request(params) 

Ответ содержит ключевые поля: Ph — ключевое слово, Po — позиция, Nq — месячный объём поиска, Tr — расчётный трафик, Ur — URL страницы.

Для backlink-аудита используем:

def get_backlinks(self, target: str, limit: int = 1000) -> list[dict]: params = { 'type': 'backlinks', 'target': target, 'target_type': 'root_domain', 'display_limit': limit, 'display_sort': 'page_ascore_desc', 'export_columns': 'source_url,target_url,anchor,page_ascore,domain_ascore,nofollow,first_seen', } return self._request(params) 

Ежедневный сбор данных и хранение

Организуем пайплайн: по расписанию (например, cron) запускается скрипт, который собирает метрики домена, топ-200 ключевых слов, и сохраняет всё в PostgreSQL. Пример схемы:

CREATE TABLE semrush_domain_metrics ( id SERIAL PRIMARY KEY, domain TEXT NOT NULL, snapshot_date DATE NOT NULL, organic_keywords INTEGER, organic_traffic INTEGER, semrush_rank INTEGER, UNIQUE(domain, snapshot_date) ); CREATE TABLE semrush_keyword_positions ( id SERIAL PRIMARY KEY, domain TEXT NOT NULL, keyword TEXT NOT NULL, position INTEGER, search_volume INTEGER, url TEXT, snapshot_date DATE NOT NULL, UNIQUE(domain, keyword, snapshot_date) ); 

Пошаговая настройка интеграции

Чтобы автоматизировать сбор данных, выполните следующие шаги:

  1. Получите API-ключ в панели SEMrush (раздел API).
  2. Установите зависимости: pip install requests psycopg2-binary.
  3. Реализуйте класс SemrushClient как показано выше.
  4. Создайте таблицы в PostgreSQL по приведённой схеме.
  5. Настройте cron-задачу для ежедневного запуска скрипта.
  6. Интегрируйте метрики в Grafana для визуализации.

Что входит в работу

Наша интеграция включает:

  • Код клиента на Python с обработкой ошибок и пагинацией.
  • Скрипты для сбора данных по расписанию.
  • Схему PostgreSQL для хранения метрик.
  • Документацию по запуску и настройке.
  • Настройку дашборда в Grafana (опционально).
  • Поддержку после внедрения при обнаружении ошибок.

Расчёт API units

Для ежедневного мониторинга 5 доменов (метрики + 200 ключевых слов) расход примерно 500–700 units в день. При тарифе Business (10 000 units/мес) это укладывается в лимит. Оптимизация: не запрашивать полные списки бэклинков ежедневно, только ключевые метрики. Полный backlink-аудит — раз в неделю.

Сроки и стоимость

Базовая интеграция с ежедневным сбором метрик одного домена и топ-200 ключевых слов — 2–3 рабочих дня. Расширенная версия с конкурентным анализом, backlink-аудитом и дашбордом в Grafana — 5–7 дней. Стоимость рассчитываем индивидуально после аудита ваших задач. Получите консультацию — свяжитесь с нами, чтобы оценить проект. Закажите интеграцию сегодня и начните экономить время и ресурсы.

Мы гарантируем качество: код покрыт тестами, настроены алерты при ошибках сбора, предоставляем поддержку после внедрения. Наш опыт — 5+ лет в веб-разработке и SEO-интеграциях, реализовано 8 проектов с суммарным мониторингом 50+ доменов.

SEMrush API Documentation