Проект предназначен для проверки поездов на появление свободных мест. Используются данные сайта РЖД.
Frontend - телеграм бот.
Бот в работе: @wait_train_bot
- Python3 должен быть уже установлен.
- Используйте
pip
(илиpip3
, есть конфликт с Python2) для установки зависимостей:
pip install -r requirements.txt
-
Рекомендуется использовать virtualenv/venv для изоляции проекта.
-
Завести бесплатную базу данных на redislabs.com, получить адрес, порт и пароль от базы и положить их в
.env
под именамиDB_HOST
,DB_PORT
иDB_PASSWORD
соответственно. -
Установить браузер
GoogleChrome
, скачать подходящийChromeDriver
остюда и указать путь к файлу драйвера в.env
под именемCHROMEDRIVER_PATH
. -
Для работы с Telegram потребуется:
- Включить
VPN
, если мессенджер заблокирован в вашей стране; - Получить
bot token
и положить его в.env
под именемTG_BOT_TOKEN
, об этом здесь; - Получить
bot token
для бота-логера, требуемого для отслеживания ошибок в работе ботов. Полученный token в.env
под именемTG_LOG_BOT_TOKEN
. - Получить свой
id
у@userinfobot
и положить в.env
под именемTG_CHAT_ID
- Включить
-
Запустить файл
aio_search_bot.py
.
В репозитории присутствует файл-утилита collect_logs.py
. Она предназначена для очистки памяти базы данных от собранных логов о поисковых запросах (записи обезличины). Утилита соберет все логи и запишет в json-файл на рабочей машине (допишет, если в файле уже присутствуют записи). Перед её запуском потребуется в файле .env
указать имя записи логов в базе данных и путь к json-файлу под именами LOGS_KEY
и LOGS_PATH
соответственно.