Отделу продаж нужно следить за каталогом конкурентов на Ozon: кто торгует в премиум-сегменте, кто в экономе, и по каждому интересному товару сразу ставить задачу менеджеру в AmoCRM. Руками это не масштабируется: сотни позиций, каталог меняется ежедневно, часть
Собрал пайплайн «сбор → обогащение → действие в CRM». Парсер обходит категорию до заданного объёма или конца каталога. LLM (с fallback на эвристику) раскладывает товары по ценовым сегментам. В AmoCRM уходят только топ-5 премиум и топ-5 эконом как готовые лиды. Три точки входа: CLI для разового прогона, HTTP API с фоновыми задачами, Celery-воркер для распределённого запуска. Идемпотентность через Redis или файл, чтобы повторный прогон не плодил дубли задач в CRM.
Сбой парсера или LLM не валит прогон: в CRM попадает то, что успели обработать, остальное логируется. Результат сохраняется в JSON, SQLite или PostgreSQL для аудита. Архитектура с портами и адаптерами: Ozon заменяется на Wildberries или любой другой источник одним адаптером, AmoCRM на Bitrix24 так же. Docker Compose, тесты, README со схемой.