Необходимо разработать автоматизированного бота, который выполняет комплексную автоматизацию процесса записи в визовый центр:
· Круглосуточный мониторинг сайта VFS Global на наличие свободных слотов · Автоматическое бронирование найденных слотов · Автоматическое прохождение видео-верификации с использованием заранее подготовленных материалов · Мгновенные уведомления о ключевых событиях
2. Цели и задачи
· Основная цель: Полная автоматизация процесса записи на подачу документов в визовый центр · Ключевые задачи: · Авторизация в системе VFS Global · Поиск и анализ доступных дат для записи · Автоматическое бронирование подходящих слотов · Прохождение видео-верификации с использованием виртуальной камеры · Обеспечение стабильной работы 24/7
3. Функциональные требования
3.1. Конфигурационная система
· Конфигурационный файл (config.json) с настройками: · Учетные данные VFS Global (логин/пароль) · URL целевого визового центра · Желаемый период для записи · Настройки уведомлений (Telegram Bot Token) · Интервалы проверки (10-30 секунд) · Пути к видеофайлам для верификации · Настройки виртуальной камеры
3.2. Модуль мониторинга и бронирования
· Режим 1 (Оповещатель): · Постоянный мониторинг доступных слотов · Мгновенные уведомления в Telegram при обнаружении подходящей даты · Прямые ссылки на страницу бронирования в уведомлениях · Режим 2 (Автобронирование): · Полностью автоматическое бронирование слотов · Автозаполнение необходимых данных · Подтверждение бронирования
3.3. Модуль видео-верификации
· Интеграция с виртуальной камерой: · Поддержка OBS Virtual Camera, ManyCam и аналогичных решений · Программное управление видео-потоком через OBS WebSocket · Автоматизация процесса: · Определение этапа видео-верификации · Автоматическое предоставление прав доступа к камере и микрофону · Выбор виртуальной камеры в качестве источника · Воспроизведение подготовленных видеофайлов · Корректное завершение сеанса верификации
3.4. Техническая устойчивость
· Обход систем защиты (Cloudflare, антибот системы) · Поддержание пользовательской сессии (cookies, headers) · Обработка сетевых ошибок и изменений в структуре сайта · Расширенное логирование всех операций
4. Нефункциональные требования
4.1. Технический стек
· Язык программирования: Python 3.x · Парсинг и автоматизация: Selenium WebDriver/Playwright · Работа с видео: OBS Studio + obs-websocket-py · Уведомления: python-telegram-bot · Конфигурация: JSON/YAML · Логирование: встроенный модуль logging
4.2. Системные требования
· Обязательное ПО: OBS Studio с Virtual Camera plugin · Дополнительно: xvfb для Linux (безголовый режим)
4.3. Производительность и надежность
· Работа 24/7 с минимальными перерывами · Оптимизированная нагрузка на серверы VFS · Автоматическое восстановление после сбоев · Детальное логирование для диагностики
5. Этапы разработки и приемки
Этап 1: Подготовительный
· Согласование ТЗ и технических деталей · Подготовка тестового окружения
Этап 2: Базовый функционал
· Разработка модуля авторизации и мониторинга · Реализация системы уведомлений (Telegram) · Тестирование парсинга и поиска слотов
Этап 3: Модуль бронирования
· Разработка системы автобронирования · Интеграция с этапами оформления записи · Тестирование полного цикла бронирования
Этап 4: Видео-верификация
· Интеграция с OBS Studio и виртуальной камерой · Разработка модуля автоматической верификации · Тестирование воспроизведения видео через виртуальную камеру
Этап 5: Комплексное тестирование
· Полное тестирование всего workflow · Проверка стабильности и обработки ошибок · Нагрузочное тестирование
Этап 6: Документация и сдача
· Подготовка инструкции по установке и настройке · Написание руководства пользователя · Финальная демонстрация и сдача проекта
6. Критерии приемки
1. Бот успешно запускается на чистой VPS по предоставленной инструкции 2. Стабильная работа в течение 48 часов без критических ошибок 3. Успешное прохождение полного цикла: поиск → бронирование → видео-верификация 4. Корректная работа системы уведомлений 5. Гибкая настройка под разные визовые центры и даты
7. Важные предупреждения и ограничения
7.1. Технические риски
· VFS Global может изменить структуру сайта или усилить защиту · Возможно появление капчи, требующей интеграции с сервисами распознавания · Не гарантируется 100% успех видео-верификации из-за возможных систем обнаружения
8. Требования к исполнителю
· Опыт веб-скрейпинга с обходом систем защиты (Cloudflare) · Работа с Selenium/Playwright и автоматизацией браузеров · Интеграция с OBS Studio и виртуальными камерами · Понимание WebRTC и медиа-потоков в браузере · Опыт работы с API Telegram для уведомлений
9. Результаты проекта
Исполнитель предоставляет: 1. Полный исходный код 2. Исполняемые файлы и скрипты запуска 3. Подробную документацию по установке и настройке 4. Инструкцию по конфигурации OBS и виртуальной камеры 5. Примеры конфигурационных файлов