Задание: Веб-программист. Создать бота для авто записи на сайте VMS (Дистанционная работа)
Техническое задание: Бот для мониторинга и записи на визу (VFS Global / TLScontact)
1. Цель проекта
Разработать программное решение (бот), которое в режиме 24/7 отслеживает появление свободных слотов на сайте визового центра (указать страну, например, Франция/Испания) и оперативно уведомляет пользователя в Telegram или выполняет автоматическое бронирование.
2. Стек технологий (рекомендуемый)
Язык: Python.
Автоматизация: Selenium, Playwright или Pyppeteer (для обхода защиты и имитации действий пользователя).
Уведомления: Telegram Bot API (библиотека aiogram или python-telegram-bot).
База данных: SQLite или PostgreSQL (для хранения данных пользователей и логов слотов).
Анти-детект: Использование прокси (HTTP/SOCKS5) и библиотек для скрытия автоматизации (например, undetected-chromedriver).
3. Функциональные требования
3.1. Модуль авторизации
Бот должен уметь автоматически логиниться в личный кабинет визового центра.
Поддержка решения капчи (интеграция с сервисами типа 2Captcha или RuCaptcha).
Обработка сессий: переподключение при «вылете» из аккаунта.
3.2. Модуль мониторинга
Проверка доступности слотов по заданным параметрам (город, тип визы) с настраиваемым интервалом (например, раз в 2–5 минут).
Обход блокировок: рандомные задержки между действиями, смена User-Agent.
3.3. Модуль уведомлений
Мгновенная отправка сообщения в Telegram при обнаружении слота с указанием даты и времени.
Прямая ссылка на страницу записи в сообщении.
3.4. Авто-бронирование (опционально — уточнить у заказчика)
При обнаружении слота бот должен автоматически выбрать его и нажать кнопку подтверждения/записи.
Использование заранее сохраненных данных пользователя (ФИО, номер паспорта, дата рождения).
4. Нефункциональные требования
Стабильность: Работа на сервере (VPS) 24/7.
Логирование: Запись всех действий бота и ошибок в файл для отладки.
Масштабируемость: Возможность добавить несколько аккаунтов для мониторинга.
5. Интерфейс управления (Telegram)
Команды для пользователя:
/start — запуск и краткая инструкция.
/status — проверка работы бота и времени последней проверки сайта.
/set_params — выбор города и типа визы.
/pause / /resume — управление активностью мониторинга.
6. Ожидаемый результат
Рабочий простой в использовании бот