Как построить инструмент мониторинга цен: пошаговое руководство
Создаём полноценный инструмент мониторинга цен на Python: отслеживание изменений, оповещения по email, база данных и планировщик. С примерами кода.
Команда InfraProxy
8 февраля 2026 г.
Зачем нужен свой инструмент мониторинга
Готовые SaaS-решения для мониторинга цен стоят от 30 000 руб./мес и ограничены по количеству отслеживаемых позиций. Если у вас специфические требования — нестандартные источники, кастомная логика обработки, интеграция с внутренними системами — свой инструмент окупается за первый месяц.
Архитектура системы
Инструмент состоит из четырёх компонентов:
- Сборщик (Scraper) — получает страницы товаров через прокси
- Парсер (Parser) — извлекает цену, название, наличие
- Хранилище (Database) — сохраняет данные с историей
- Оповещения (Alerts) — уведомляет об изменениях
Компонент 1: Сборщик данных
Начните с официальных API, партнёрских фидов и выгрузок поставщиков. Для разрешённых открытых страниц учитывайте:
JavaScript-рендеринг. Большинство современных магазинов загружают цены динамически. Простой HTTP-запрос вернёт пустую страницу. Нужен либо headless-браузер, либо API для скрейпинга.
Правила источника. Проверьте ToS, robots.txt, лицензию данных и допустимую частоту запросов.
Сетевой маршрут. Прокси помогают получать разрешённые региональные варианты страницы, но не дают разрешения на сбор.
Компонент 2: Извлечение данных
Из каждой страницы товара нужно извлечь:
- Название товара и артикул/SKU
- Текущая цена (и цена до скидки)
- Наличие на складе (в наличии / под заказ / нет)
- Стоимость доставки (если отображается)
- Рейтинг и отзывы (для полноты картины)
Ключевой вызов — селекторы различаются между магазинами. Каждый источник требует своего набора правил парсинга.
Компонент 3: База данных
Сохраняйте каждый замер с временной меткой:
- Товар: SKU, название, URL
- Источник: магазин, регион
- Замер: цена, скидка, наличие, дата и время
Это позволяет строить графики динамики, находить паттерны (скидки по выходным, рост перед праздниками) и рассчитывать средние цены за период.
Компонент 4: Оповещения
Настройте уведомления по критическим событиям:
- Цена снизилась более чем на X%
- Товар появился/исчез из наличия
- Конкурент запустил акцию
- Цена опустилась ниже вашей себестоимости
Каналы уведомлений: email, Telegram-бот, webhook в вашу систему.
Частота мониторинга
Оптимальная частота зависит от задачи:
- Высококонкурентные ниши (электроника, бытовая техника): каждые 1-2 часа
- Стабильные категории (продукты питания, одежда): 2-4 раза в день
- B2B-продукты: 1 раз в день
- Мониторинг акций: каждые 30 минут в период распродаж
Масштабирование
При росте числа отслеживаемых позиций:
- 100-500 товаров — один скрипт с последовательными запросами
- 500-5000 товаров — параллельные запросы (5-10 потоков)
- 5000+ товаров — распределённая система с очередями задач
Размер пула и число воркеров определяйте тестом на разрешённом источнике. Измеряйте частоту 200/429/503, задержку и долю повторных запросов.
Работа с источниками
Для каждого источника документируйте разрешённый способ доступа, схему данных, валюту, регион и время обновления. Не используйте внутренние API приложений без разрешения владельца.
Стоимость системы
Типичные затраты:
- Прокси (резидентные): от 10 000 руб./мес
- Сервер/хостинг: от 3 000 руб./мес
- Разработка: 20-40 часов (одноразово)
Для сравнения: SaaS-решения аналогичного уровня — от 30 000 руб./мес без возможности кастомизации.
Перед рабочим запуском проверьте задачу на разрешённом источнике: возможности Scraper API.
Этичность и ограничения
Перед сбором проверьте официальный API, robots.txt и условия использования источника. Соблюдайте Disallow и Crawl-delay, ограничивайте параллельность, используйте backoff на 429/503 и кэшируйте ответы. Собирайте только публичные данные: без обхода логина и paywall, без персональных данных и перепубликации чужих текстов. Используйте честный User-Agent и обрабатывайте запросы на удаление данных.
Нужно получать публичные данные без поддержки собственной инфраструктуры?
Посмотрите возможности Scraper API, условия теста и примеры интеграции.
Перейти к Scraper APIЧитайте также
Сбор публичного каталога товаров: Python и API
Как получать публичные карточки товаров: официальный API, HTML, пагинация, дедупликация, контроль изменений и этичные ограничения.
БизнесЦеновая разведка в e-commerce: полное руководство
Как выстроить систему мониторинга цен конкурентов с помощью прокси и веб-скрейпинга: от стратегии до автоматизации. Практическое руководство для интернет-магазинов.
РуководстваNo-code веб-скрейпинг: извлечение данных без программирования
Как настроить сбор данных в 2026 году без написания кода: API для скрейпинга, extract_rules, автоматизация через n8n и Make.com, батчевая обработка 100+ страниц.