Бот на Puppeteer для автоматизации рутинного веб-процесса

Iryna
Заказчик

Iryna

> 10 проектов
Параметры проекта
Вариант сотрудничестваОдноразовый проект
Предоплатабез предоплат
Способы оплатыНаличные, Банковский перевод
Приём заявокот до 2026-08-31
Описание проекта
Каждый рабочий день моя команда тратит около часа на одну и ту же нудную операцию в веб-панели поставщика: кто-то заходит под логином, открывает несколько форм, вбивает одни и те же данные заказа, затем скачивает отчёт и кладёт его в общую папку. Это чистые клики, никакого принятия решений, и я хочу, чтобы всё это полностью взял на себя бот на Puppeteer и headless Chrome. Это именно задача браузерной автоматизации, а не обычный скрипт-парсер: бот должен реально управлять интерфейсом так же, как это делает человек — печатать в поля, ставить галочки, жать «Отправить», дожидаться появления подтверждения и только потом идти дальше.

Сценарий примерно такой. Бот авторизуется с учётными данными из конфига или переменных окружения, обрабатывает сессионную куку и убеждается, что попал на дашборд. Дальше он проходит две-три формы, подставляя значения из CSV или JSON, который я передам, отправляет каждую и проверяет сообщение об успехе на экране, прежде чем продолжить. После форм он запускает выгрузку отчёта, дожидается формирования файла, сохраняет его с именем-меткой времени и архивирует предыдущий запуск. Всё это должно работать без участия человека по расписанию (cron или планировщик на Node — на ваш выбор), поэтому надёжность важнее скорости: на каждом шаге нужны повторы с задержкой, разумные таймауты и понятные логи, чтобы я видел, где именно и почему упал прогон.

Ожидаю чистый, прокомментированный код на Node.js и короткий README по установке и настройке. Мне важна аккуратная обработка сбоев: если панель тормозит или элемент не найден, бот должен повторить попытку несколько раз, затем записать ошибку и корректно завершиться, не портя выходные данные и не подвисая молча.

— Puppeteer + headless Chrome, Node.js, запуск без оператора по расписанию
— Логин с сессией, затем заполнение и отправка нескольких форм из CSV/JSON
— Запуск выгрузки отчёта, сохранение с меткой времени, архив прошлых запусков
— Повторы с задержкой, таймауты и подробный лог по каждому шагу
— Доступы в конфиге/окружении, не в коде; чистый комментированный код + README
Автор проекта: Iryna