Skip to content

sinieogni/auditor_bot

Repository files navigation

Система мониторинга ЖД билетов

Пет-проект для мониторинга наличия ЖД билетов на основе API РЖД.

Возможности

  • Поиск и мониторинг маршрутов поездов
  • Автоматическая проверка наличия билетов с настраиваемой частотой (минимум 30 секунд ±5 сек)
  • Приоритетная обработка городов (поиск по всем станциям города)
  • Уведомления через Email, Telegram и веб-интерфейс
  • Веб-интерфейс для управления заявками

Установка

  1. Установите зависимости:
pip install -r requirements.txt
  1. Создайте файл .env на основе .env.example и заполните настройки:

    • Настройки SMTP для email уведомлений (опционально)
    • Telegram Bot Token и Chat ID для Telegram уведомлений (опционально)
  2. Инициализируйте базу данных:

python -m database.init_db
  1. Запустите веб-интерфейс:
python run_web.py

Откройте браузер: http://localhost:5010

  1. Запустите сервис мониторинга (в отдельном терминале):
python run_monitor.py

Использование

Веб-интерфейс

  1. Откройте http://localhost:5010 в браузере
  2. Нажмите "Создать заявку"
  3. Заполните форму:
    • Название заявки
    • Откуда/Куда (начните вводить название города или станции, выберите из списка)
    • Дата отправления (обязательно)
    • Дата возврата (опционально, для туда-обратно)
    • Интервал проверки (минимум 30 секунд)
    • Настройки уведомлений
  4. Сохраните заявку

CLI тестирование

# Поиск станций
python cli/test_station_code.py "Москва"

# Поиск маршрутов
python cli/test_train_routes.py --from "2000000" --to "2004000" --date "2024-12-25"

Структура проекта

  • cli/ - CLI утилиты для тестирования API
  • core/ - Основная логика (API клиент, мониторинг, работа со станциями)
  • web/ - Веб-интерфейс (Flask)
  • notifications/ - Система уведомлений
  • database/ - Модели базы данных
  • config/ - Конфигурация
  • data/ - База данных и кеши
  • logs/ - Логи приложения

Использование

CLI тестирование

# Поиск станций
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 файле.

Лицензия

Личный проект для некоммерческого использования.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors