https://github.com/chrnmaxim/ya_practicum_bot
Telegram бот «practicum_final_bot»
https://github.com/chrnmaxim/ya_practicum_bot
python python-telegram-bot
Last synced: over 1 year ago
JSON representation
Telegram бот «practicum_final_bot»
- Host: GitHub
- URL: https://github.com/chrnmaxim/ya_practicum_bot
- Owner: chrnmaxim
- Created: 2024-04-26T15:29:41.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-05T18:43:06.000Z (about 2 years ago)
- Last Synced: 2025-01-29T11:45:29.813Z (over 1 year ago)
- Topics: python, python-telegram-bot
- Language: Python
- Homepage:
- Size: 27.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Telegram бот «practicum_final_bot»
### Описание
**Telegram-бот** обращается к API сервису Яндекс.Практикум и узнает статус домашней работы пользователя: взята ли работа в ревью, проверена ли она, а если проверена — принял её ревьюер или же вернул на доработку.
Что делает бот:
* раз в 10 минут опрашивает API сервиса Яндекс.Практикум и проверяет статус последней отправленной на ревью работы;
* при обновлении статуса анализирует ответ API и отправляет соответствующее уведомление в Telegram;
* логирует свою работу и сообщает о важных проблемах сообщением в Telegram.
### Технологии:
* Python 3.11
* python-dotenv 0.19.0
* python-telegram-bot 13.7
* requests 2.26.0
### Запуск проекта
Клонировать проект c GitHub:
```
git clone git@github.com:chrnmaxim/homework_bot.git
```
Установить виртуальное окружение:
```
python -m venv venv
```
Активировать виртуальное окружениe:
```
. venv/Scripts/activate
```
Обновить менеджер пакетов pip:
```
python -m pip install --upgrade pip
```
Установить зависимости из requirements.txt:
```
pip install -r requirements.txt
```
Запуск бота:
```
python homework.py
```
### **Дополнительная информация**
Перед запуском Telegram-бота необходимо создать переменные окружения в файле **.env**.
```
PRACTICUM_TOKEN = Токен для доступа к данным Яндекс.Практикум
TELEGRAM_TOKEN = API токен бота
TELEGRAM_CHAT_ID = id чата
```
**PRACTICUM_TOKEN** - доступ к API Яндекс.Практикум возможен только по токену. Получить токен можно по [ссылке](https://oauth.yandex.ru/authorize?response_type=token&client_id=1d0b9dd4d652455a9eb710d450ff456a) при условии, что выполнен вход в учетную запись Яндекс.Практикум.
**TELEGRAM_TOKEN** - API токен личного бота необходимо получить у телеграм-бота [BotFather](https://t.me/BotFather).
**TELEGRAM_CHAT_ID** - id чата получаем путем отправки сообщения в телеграм-бота [userinfobot](https://t.me/userinfobot).
---