AbitAssistant_Bot — це Telegram-бот для випускників 11 класів України, який автоматизує процес відстеження заяв абітурієнтів на вступ до ВНЗ. Бот реалізує техніку, описану у цьому відео, і значно економить час, показуючи конкурентів у зручному вигляді.
- 📥 Парсинг конкурсних списків із vstup.osvita.ua
- 📊 Автоматична обробка та сортування даних
- 🧾 Формування списку конкурентів за обраною спеціальністю
- 🔗 Генерація прямих посилань на абітурієнтів у abit.poisk
- 📂 Запис усіх даних у локальну базу даних
- 👥 Адміністративна панель з списком користувачів
- 📋 Система логування дій
- 📣 Розсилка повідомлень користувачам
План розвитку та оновлень AbitAssistant_Bot можна переглянути у публічному Trello:
👉 Відкрити Roadmap
Там відображено:
- Плани на майбутні оновлення.
- Завдання на найближчий час;
- Функції, що зараз у розробці;
💬 Якщо маєш пропозицію — можеш залишити її у Issues, або написати в підтримку у самому боті.
Вимоги:
- Python 3.10+
- Docker + Docker Compose
- Telegram Bot Token
Кроки:
-
Встановити Docker:
-
Клонувати репозиторій:
git clone https://github.com/OlexiyOdarchuk/AbitAssistant_Bot.git cd AbitAssistant_Bot -
Налаштувати конфігурацію:
- Створіть
config.pyна основіconfig.example.py - Створіть
docker-compose.ymlна основіdocker-compose.example.yml
- Створіть
-
Запустити проєкт:
docker-compose up --build
Після запуску бот автоматично почне працювати у Telegram.
- Python + Aiogram – логіка бота
- Selenium – парсинг даних з вебсайтів
- SQLAlchemy – ORM для роботи з базою даних
- PostgreSQL – основна СУБД
- Docker – контейнеризація
Перед запуском обов’язково скопіюйте і налаштуйте такі файли:
config.py(на основіconfig.example.py) — токени, логіни, посилання.docker-compose.yml(на основіdocker-compose.example.yml) — налаштування середовища.
Telegram: @NeShawyha
Gmail: Написати лист
Цей проєкт розповсюджується за умовами ліцензії GPLv3.
Якщо проєкт вам корисний, розгляньте можливість підтримки:
У проєкті дотримано чіткої структури: головні файли — в корені, уся логіка — в папці app/. Нижче — повний опис з посиланнями:
📦 project_root/
├── bot.py — головний файл для запуску бота
├── config.py — конфігураційний файл (створюється на основі config.example.py)
├── docker-compose.yml — конфігурація Docker-сервісів (створюється на основі docker-compose.example.yml)
├── app/
│ ├── database/ — взаємодія з базою даних PostgreSQL + SQLAlchemy
│ │ ├── models.py — моделі для бази
│ │ ├── requests.py — запити до бази
│ ├── handlers/ — обробка команд та повідомлень користувача
│ │ ├── __init__.py — ініціалізація пакету
│ │ ├── admin.py — адмін-команди
│ │ ├── common.py — загальні команди
│ │ ├── filtering.py — фільтрація даних
│ │ ├── support.py — зворотній зв'язок
│ │ ├── viewing.py — перегляд абітурієнтів
│ ├── services/ — основна логіка бота (парсинг, аналіз, генерація)
│ │ ├── applicants_len.py — підрахунок абітурієнтів
│ │ ├── parse_in_db.py — парсинг, аналіз і додавання даних до БД
│ │ ├── generate_link.py — генерування посилань
│ │ ├── mailing.py — розсилки
│ │ ├── support.py — обробка відгуків
│ │ ├── user_management.py — управління користувачами
│ │ ├── logger.py — система логування
│ │ ├── stats.py — статистика
│ ├── keyboards.py — кнопки та клавіатури
│ ├── states.py — стани FSM
Бот вже працює і доступний у Telegram:
Проєкт відкритий до розвитку і вдосконалення. Якщо ви хочете допомогти — fork'айте репозиторій, вносьте зміни і створюйте pull request'и.
💡 Можливо саме ваша доробка потрапить до нової версії проєкту!