Разработка бота для автоматического заполнения форм и бронирования
Описание задачи:
Необходимо разработать программу (бота), которая будет выполнять автоматическое заполнение данных и бронирование доступных временных окон на сайте визового центра. Бот должен регулярно проверять наличие свободных слотов, заполнять веб-формы и автоматически завершать процесс бронирования.
Требуемые функции:
1. Мониторинг доступных слотов:
Бот должен периодически (каждые 30 секунд или другой установленный интервал) проверять наличие свободных временных окон для записи в визовый центр.
После появления доступного слота бот должен автоматически переходить к этапу заполнения и бронирования.
2. Заполнение формы:
Программа должна уметь автоматически заполнять формы на сайте с заданными данными (ФИО, номер паспорта, контактная информация и т.д.).
Данные для заполнения должны задаваться заранее и храниться в конфигурационном файле или базе данных.
3. Автоматическое бронирование:
После заполнения формы бот должен автоматически подтвердить бронирование и завершить процесс.
Важно, чтобы бот корректно взаимодействовал с элементами страницы (кнопками, чекбоксами, выпадающими списками).
4. Работа с веб-интерфейсом:
Использование Selenium или аналогичных инструментов для автоматизации браузера.
Бот должен работать с реальными веб-страницами (взаимодействовать с элементами DOM).
5. Оповещения:
При успешном бронировании бот должен отправлять уведомление (по email или в мессенджер, например, Telegram) с деталями записи.
В случае возникновения ошибок (недоступность сайта, ошибки при заполнении) также должны приходить уведомления.
6. Обработка капчи (если есть):
Если сайт использует капчу, нужно предусмотреть способы обхода (например, с помощью ручного ввода или интеграции с сервисами распознавания капчи).
Технические требования:
Язык программирования: Python (или другой предложенный программистом язык).
* Используемые технологии: Selenium (для автоматизации браузера), BeautifulSoup или Requests (если требуется парсинг), библиотека для работы с уведомлениями (например, aiogram для Telegram).
* Гибкая настройка частоты проверок и данных для заполнения.
* Возможность запуска программы как на локальном компьютере, так и на сервере (желательно).
* Обработка всех возможных ошибок, связанных с доступом к сайту, его недоступностью, таймаутами и т.д.
Ожидаемый результат:
* Рабочая программа (бот), способная автоматически заполнять данные и бронировать слоты на сайте визового центра в реальном времени.
* Уведомления о статусе бронирования или ошибках.
* Подробная инструкция по запуску и настройке бота.