Бот для отслеживания свободных слотов к психологам на сайте ННГУ: https://psys.unn.ru/login
Когда бот находит слот у выбранного психолога, он отправляет уведомление в Telegram.
- Python 3.12+ и uv
- Google Chrome и chromedriver
- Токен Telegram бота и ID чата с вами
- Склонируйте проект:
git clone git@github.com:volvetcode/unn_slot_catcher.git
cd unn_slot_catcher- Установите
uv, если он еще не установлен:
curl -LsSf https://astral.sh/uv/install.sh | sh-
Скачайте ChromeDriver под вашу версию Chrome: https://googlechromelabs.github.io/chrome-for-testing/
-
Положите бинарник ChromeDriver в папку
drivers/:
mkdir -p drivers logsОжидаемый путь по умолчанию:
drivers/chromedriver
- Создайте
.envна основеdotenv_example.txt:
cp dotenv_example.txt .env- Заполните обязательные значения в
.env:
LOGIN=your_unn_login
PASSWORD=your_unn_password
TELEGRAM_TOKEN=your_telegram_bot_token
CHAT_ID=your_telegram_chat_idОстальные настройки уже есть в dotenv_example.txt. Самые важные:
IS_PROD=TRUEзапускает Chrome в headless-режиме.CHROMEDRIVER_PATH=drivers/chromedriverзадает путь до ChromeDriver.DURATION_HOURS=8задает время работы бота.PSYCHOLOGISTS=[...]задает список психологов. Сейчас бот проверяет первого психолога из списка.
uv run python src/app.pyЛоги пишутся в формате JSON в папку logs/.
