Пет-проект для мониторинга наличия ЖД билетов на основе API РЖД.
- Поиск и мониторинг маршрутов поездов
- Автоматическая проверка наличия билетов с настраиваемой частотой (минимум 30 секунд ±5 сек)
- Приоритетная обработка городов (поиск по всем станциям города)
- Уведомления через Email, Telegram и веб-интерфейс
- Веб-интерфейс для управления заявками
- Установите зависимости:
pip install -r requirements.txt-
Создайте файл
.envна основе.env.exampleи заполните настройки:- Настройки SMTP для email уведомлений (опционально)
- Telegram Bot Token и Chat ID для Telegram уведомлений (опционально)
-
Инициализируйте базу данных:
python -m database.init_db- Запустите веб-интерфейс:
python run_web.pyОткройте браузер: http://localhost:5010
- Запустите сервис мониторинга (в отдельном терминале):
python run_monitor.py- Откройте http://localhost:5010 в браузере
- Нажмите "Создать заявку"
- Заполните форму:
- Название заявки
- Откуда/Куда (начните вводить название города или станции, выберите из списка)
- Дата отправления (обязательно)
- Дата возврата (опционально, для туда-обратно)
- Интервал проверки (минимум 30 секунд)
- Настройки уведомлений
- Сохраните заявку
# Поиск станций
python cli/test_station_code.py "Москва"
# Поиск маршрутов
python cli/test_train_routes.py --from "2000000" --to "2004000" --date "2024-12-25"cli/- CLI утилиты для тестирования APIcore/- Основная логика (API клиент, мониторинг, работа со станциями)web/- Веб-интерфейс (Flask)notifications/- Система уведомленийdatabase/- Модели базы данныхconfig/- Конфигурацияdata/- База данных и кешиlogs/- Логи приложения
# Поиск станций
python cli/test_station_code.py "Москва"
# Поиск маршрутов
python cli/test_train_routes.py --from "2000000" --to "2004000" --date "2024-12-25"Откройте браузер и перейдите на http://localhost:5010
Настройки находятся в config/config.py и .env файле.
Личный проект для некоммерческого использования.