
Клиенту нужно было регулярно сравнивать цены и наличие товаров в разных городах и сервисах доставки.
Каждый месяц в работу поступал новый файл примерно с 300 товарными позициями. Мониторинг требовалось проводить одновременно в 11 городах и 5 сервисах:
Ozon;
ВкусВилл;
Яндекс Лавка;
Пятёрочка;
Магнит.
Таким образом, один цикл мог включать до 16 500 сочетаний товара, города и сервиса:
300 товаров × 11 городов × 5 сервисов = 16 500 проверок.
Но основной проблемой был не сам объем данных. Для каждой исходной позиции требовалось подобрать и сохранить корректный аналог в конкретном сервисе, учитывать различия в упаковке и объеме, а также не терять ранее согласованные соответствия.
В итоге требовалось автоматизировать не только сбор цен, но и весь процесс подготовки, запуска и контроля мониторинга.
Каждый новый месяц начинался с обработки очередного файла ТОП-300.
Команде приходилось вручную:
Сравнивать новый список с предыдущими файлами.
Определять новые товарные позиции.
Искать для них подходящие аналоги.
Подтягивать ранее согласованные аналоги.
Проверять ссылки, названия, артикулы и объемы.
Формировать рабочий файл для запуска.
Отдельно учитывать товары, которые временно отсутствовали в конкретном городе или сервисе.
Повторять подготовку файлов после неудачных запусков.
При этом один товар мог иметь разные аналоги в разных сервисах. Отличаться могли название, бренд, состав, объем упаковки, ссылка и артикул.
Дополнительная сложность возникала при сравнении товаров разного объема.
Например, цену упаковки 500 мл нельзя напрямую сравнивать с ценой упаковки 1 литр. Перед сравнением стоимость необходимо нормализовать относительно объема.
Получался процесс, в котором значительная часть работы была связана не непосредственно со сбором данных, а с постоянной подготовкой и проверкой файлов.
Одним из ключевых требований было не терять уже согласованные аналоги.
Карточка товара могла временно исчезнуть из выдачи конкретного сервиса или города. Если просто удалить такую позицию из базы, при следующем появлении товара пришлось бы заново искать и согласовывать аналог.
Поэтому мы разделили два понятия:
история проекта — все ранее выбранные аналоги и связанные с ними данные;
текущий запуск — только те позиции, которые необходимо проверять сейчас.
Если карточка временно пропала, она исключалась из текущего запуска, но информация о ней сохранялась в базе.
Это позволило использовать накопленную историю при следующих обновлениях.

Мы разработали систему, которая автоматизирует работу с ежемесячными файлами и позволяет запускать мониторинг без постоянной ручной подготовки.
При загрузке очередного ТОП-300 система определяет, какие позиции уже известны, а какие появились впервые.
Для существующих товаров используются сохраненные ранее данные.
Новые позиции добавляются в процесс отдельно, без необходимости вручную сравнивать несколько версий Excel.
Для каждой позиции система хранит информацию об используемом аналоге:
название;
объем;
ссылку;
артикул;
соответствие исходному товару.
Таким образом, согласованный аналог становится частью рабочей базы, а не остается в одном из старых Excel-файлов или переписке.
Система самостоятельно формирует актуальный набор данных для мониторинга.
Не требуется каждый раз вручную:
переносить аналоги;
добавлять новые позиции;
удалять временно неактуальные товары;
проверять структуру файла;
собирать отдельные версии под разные запуски.
Мониторинг можно запускать для нужного набора параметров.
Например:
один конкретный город;
один сервис;
несколько городов;
определенная группа товаров;
весь ТОП-300.
Это позволяет не запускать весь объем данных, если требуется проверить только отдельный сегмент.
При регулярном мониторинге часть данных может не загрузиться с первого раза.
Причины могут быть разными: временная ошибка сервиса, изменение карточки, недоступность товара или технический сбой.
Вместо повторной подготовки Excel-файла мониторинг можно запустить еще раз по нужным параметрам.
Система фиксирует информацию о запусках и результатах обработки.
Это позволяет определить:
какой запуск выполнялся;
какие города и сервисы использовались;
какие позиции были обработаны;
где возникли ошибки;
какие товары не удалось найти;
какие данные требуют повторной проверки.
При большом количестве комбинаций это существенно упрощает контроль качества.
Мониторинг можно выполнять по расписанию.
В результате актуализация данных не зависит от того, подготовил ли сотрудник новый файл и не забыл ли вручную запустить очередной сбор.
До автоматизации:
Новый ТОП-300 → сравнение файлов → поиск новых товаров → перенос аналогов → проверка ссылок и объемов → подготовка файла → запуск → поиск ошибок → повторная подготовка
После автоматизации:
Новый ТОП-300 → загрузка в систему → база аналогов → выбор параметров → мониторинг → логирование → данные для анализа
Основное изменение заключается в том, что накопленная информация теперь используется при каждом следующем запуске.
Системе не требуется заново восстанавливать уже выполненную работу.
На выходе формируются структурированные данные для сравнения собственного ассортимента с аналогичными предложениями.
В зависимости от конкретного отчета используются:
исходный товар;
объем исходного товара;
аналог;
объем аналога;
ссылка;
артикул;
город;
сервис;
текущая цена;
нормализованная цена;
дата сбора;
статус обработки.
Данные могут использоваться для дальнейшего ценового анализа и формирования ценовых ориентиров по правилам клиента.

В результате клиент получил систему регулярного мониторинга примерно 300 товаров в 11 городах и 5 сервисах.
Автоматизация позволила:
централизовать работу с ежемесячными файлами;
сохранить историю согласованных аналогов;
не терять данные при временном исчезновении карточек;
учитывать различия в объемах упаковки;
запускать мониторинг по нужным городам и сервисам;
повторять сбор без ручной пересборки файлов;
контролировать выполнение через логи;
обновлять данные по расписанию;
получать структурированные данные для ценового анализа.
Главный результат — мониторинг перестал быть последовательностью ручных операций с Excel-файлами.
Вместо этого появился воспроизводимый процесс: новый список товаров → автоматическая подготовка → мониторинг → контроль результатов → обновление данных.
Для регулярной работы с большим количеством товаров это позволяет не только сократить объем ручной подготовки, но и сохранить накопленную логику проекта при каждом следующем цикле мониторинга.