Этот проект представляет собой Telegram-бота, который выполняет API-запросы к ресурсу и проверяет, изменился ли статус домашнего задания. Бот уведомляет пользователя о статусе через сообщение в Telegram. В проекте также реализованы автоматические тесты для проверки его функциональности.
- Интеграция с API: Бот интегрируется с внешним API для получения статуса ревью ваших работ.
- Уведомления о статусе: Отправляет уведомления в указанный Telegram-чат при изменении статуса ревью работы.
- Обработка ошибок: Включает обработку различных ошибок при выполнении API-запросов и получении ответов.
- Логирование: Логирует все действия и ошибки для облегчения отладки и отслеживания.
git clone https://github.com/yourusername/homework-status-bot.git
cd homework-status-bot
python3 -m venv venv
source venv/bin/activate # Для Linux/Mac
.\venv\Scripts\activate # Для Windows
pip3 install -r requirements.txt
Создайте файл .env
в корневой директории проекта и укажите в нем необходимые переменные окружения:
PRACTICUM_TOKEN=`your_practicum_token`
TELEGRAM_TOKEN=`your_telegram_token`
TELEGRAM_CHAT_ID=`your_telegram_chat_id`
python3 tg_bot_logic.py
Удостоверьтесь, что вы находитесь в виртуальном окружении перед запуском команд.
Для проверки работы бота написаны автотесты, которые можно запустить с помощью pytest
.
pytest tests/