Задание: Машинное обучение. Автоматизатор рассылки в мессенджере с помощью OpenCV (или альтернатив) (Дистанционная работа)
Нужен рассыльщик, который взаимодействует с интерфейсом мессенджера через машинное зрение (фреймворк OpenCV или другие альтернативы) для рассылки сообщений в группы (не спам, рассылка согласована с администраторами групп). Варианты через Puppeteer/Playwright/Selenium/whatsmeow не нужны.
Подробнее:
1. Сервер на Linux Ubuntu 24 (поэтому придется ставить Xvfb на сам север или в докер)
2. Пользователь будет взаимодействовать с рассыльщиком через телеграм бот. Функции бота:
а) Если необходима авторизация, присылает QR-код
б) Импорт списка групп для рассылки excel файлом. В excel файле будет отдельный столбик geo, по которому будут группироваться группы (дальше объясню подробнее)
в) Пользователь заходит в бота, выбирает одно или несколько ГЕО для рассылки (какие группы к какому гео относятся мы понимаем из столбца geo импортированного заранее excel файла). Например, он выбирает Испанию и Латинскую Америку.
г) Далее он отправляет текст для рассылки
д) Сообщение отправляется по группам из списка, в конце приходит сообщение о результатах (сколько отправлено успешно, сколько не получилось)
у) Должна быть возможность остановить все рассылки отдельной кнопкой, посмотреть какая рассылка сейчас идёт (название, начало текста)
ж) В конфигах должна быть возможность проставить минимальный и максимальный временной интервал между паузами, список telegram_id пользователей, которым будет открыть доступ к боту.
3. Сам рассыльщик взаимодейтсвует с интерфейсом мессенджера (веб версия или приложение - на ваше усмотрение), отправляет сообщения с рандомными паузами (минимальный и максимальный интервал мы ставим в конфиге)
Обязательный фреймворки:
- Для БД SQLalchemy + Postgresql
- Логирование через loguru
- Телеграм-бот на aiogram 3
- Для определения элементов интерфейса OpenCV (если знаете фреймворк лучше - хорошо)