Telegram-бот, который обращается к API сервиса Практикум.Домашка для отслеживания статуса проверки домашней работы.
Telegram-бот обращается к API сервиса Практикум.Домашка: отслеживает статус отправленной на ревью домашней работы, раз в 5 минут, опрашивает сервис с помощью уникального для каждого пользователя API Token-a взята ли ваша домашняя работа: на ревью, проверена ли она, а если проверена — то принял её ревьюер или вернул на доработку. Если статус работы изменился, бот анализирует ответ API и отправляет соответствующее уведомление в Telegram.
- Клонировать репозиторий и перейти в него в командной строке:
git clone git@github.com:vkfedosov/homework_bot.git
cd homework_bot
- Создать и активировать виртуальное окружение:
python -m venv venv
venv/scripts/activate
- Установить зависимости из файла
requirements.txt
:
pip install -r requirements.txt
-
Создать аккаунт бота в Telegram:
- Найти в Telegram бота @BotFather. В окно поиска над списком контактов введите его имя. Обратите внимание на иконку возле имени бота: белая галочка на голубом фоне. Эту иконку устанавливают администраторы Telegram, она означает, что бот настоящий.
- Зарегистрировать бота. Начните диалог с ботом @BotFather: нажмите кнопку "Start". Затем отправьте команду /newbot и укажите параметры нового бота: *имя, под которым ваш бот будет отображаться в списке контактов; *техническое имя вашего бота, по которому его можно будет найти в Telegram. Имя должно быть уникальным и оканчиваться на слово bot в любом регистре. Если аккаунт создан, @BotFather поздравит вас и отправит в чат токен для работы с Bot API.
- Настроить аккаунт бота через @BotFather. Отправьте команду /mybots и вы получите список ботов, которыми вы управляете. Укажите бота, которого нужно отредактировать, и нажмите кнопку Edit Bot. Можно изменить: Имя бота (Edit Name); Описание (Edit Description) — текст, который пользователи увидят в самом начале диалога с ботом под заголовком «Что может делать этот бот?»; Общую информацию (Edit About) — текст, который будет виден в профиле бота; Картинку-аватар (Edit Botpic); Команды (Edit Commands) — подсказки для ввода команд.
-
Создать
.env
файл с токенами:
PRACTICUM_TOKEN=<PRACTICUM_TOKEN> # токен профиля на Яндекс.Практикуме
TELEGRAM_TOKEN=<TELEGRAM_TOKEN> # токен Telegram-бота
TELEGRAM_CHAT_ID=<TELEGRAM_CHAT_ID> # ID пользователя в Telegram
- Запустить бота:
python homework.py
Можно задеплоить бота на сервере: необходимо найти хостинг, где вы бы хотели разместить свой проект и развернуть проект там.