Парсер маркетплейса с выгрузкой в Google Таблицы и алертами в Telegram

Ссылка на работу
image image
Задача Продавец на маркетплейсе следил за ценами конкурентов руками и пришёл это выключить. Каждое утро он открывал полсотни чужих карточек, переписывал цены в блокнот, к пятнице уже не помнил кто и когда подвинулся. Задача была поставлена так: раз в сутки видеть свежий срез по конкурентам и получать сигнал сразу, как только кто-то ушёл ниже его цены. Что сделал Парсер на Python, запросы через httpx, разбор ответов через selectolax. Собирает карточки по списку поисковых запросов и по прямым ссылкам на конкурентов - цена, остаток, позиция в выдаче, метка акции. Пишет в Google Таблицу через gspread: лист сегодняшнего среза и лист истории, куда каждый прогон дописывает строку на товар. Алерты уходят ботом на aiogram - цена конкурента ниже порога, товар пропал из наличия, своя карточка уехала ниже заданного места в выдаче. Порог задаётся колонкой в самой таблице, без правок кода. Ломается в таких проектах всегда одно - блокировки и тихая смена вёрстки. Закрыл паузой со случайным разбросом между запросами, повтором с растущим интервалом на 429 и 5xx, пулом прокси с выбыванием мёртвых. Результат Ручной обход карточек занимал около полутора часов в день, сейчас это одна вкладка с таблицей. На демпинг соседа продавец реагирует в тот же день по алерту и сам решает, догонять цену или переждать. История по дням дала неожиданное: часть конкурентов роняет цену только на выходные, гнаться за ними смысла нет.