Бот MyRatingSuperBot.
This commit is contained in:
parent
3923ceb201
commit
980dea31f7
96
README.md
Normal file
96
README.md
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
# SavRatingBot
|
||||||
|
|
||||||
|
## Описание
|
||||||
|
SavRatingBot - это Telegram бот для шахматистов, который помогает отслеживать рейтинги и проверять выполнение разрядных норм.
|
||||||
|
|
||||||
|
### Основные функции:
|
||||||
|
- Отображение рейтингов ФШР (Федерация шахмат России) и ФИДЕ
|
||||||
|
- Отображение рейтингов Lichess
|
||||||
|
- Проверка выполнения разрядных норм (включая КМС)
|
||||||
|
- Автоматическое уведомление об изменениях рейтинга
|
||||||
|
|
||||||
|
## Установка и запуск
|
||||||
|
|
||||||
|
### Предварительные требования
|
||||||
|
- Docker и Docker Compose
|
||||||
|
- Токен Telegram бота (получить у [@BotFather](https://t.me/BotFather))
|
||||||
|
|
||||||
|
### Шаги по установке
|
||||||
|
|
||||||
|
1. Клонируйте репозиторий:
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/yourusername/SavRatingBot.git
|
||||||
|
cd SavRatingBot
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Создайте файл `.env` в корневой директории проекта со следующим содержимым:
|
||||||
|
```
|
||||||
|
TG_TOKEN=ваш_токен_телеграм_бота
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Запустите бота с помощью Docker Compose:
|
||||||
|
```bash
|
||||||
|
docker-compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
### Запуск без Docker
|
||||||
|
|
||||||
|
1. Установите Python 3.10 или выше
|
||||||
|
|
||||||
|
2. Установите зависимости:
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Экспортируйте переменную окружения с токеном бота:
|
||||||
|
```bash
|
||||||
|
export TG_TOKEN=ваш_токен_телеграм_бота
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Запустите бота:
|
||||||
|
```bash
|
||||||
|
python MyRatingSuperBot.py
|
||||||
|
```
|
||||||
|
|
||||||
|
## Использование
|
||||||
|
|
||||||
|
### Команды бота
|
||||||
|
- `/start` - Начать работу с ботом
|
||||||
|
- `/delete_fshr_id` - Удалить сохраненный ФШР ID
|
||||||
|
- `/delete_lichess_username` - Удалить сохраненный ник Lichess
|
||||||
|
- `/bot_info` - Получить информацию о боте
|
||||||
|
|
||||||
|
### Функции бота
|
||||||
|
1. **Проверка рейтинга ФШР и ФИДЕ**
|
||||||
|
- Нажмите кнопку "МОЙ РЕЙТИНГ ФШР"
|
||||||
|
- Введите свой ID ФШР (если не вводили ранее)
|
||||||
|
- Бот покажет ваши текущие рейтинги ФШР и ФИДЕ
|
||||||
|
|
||||||
|
2. **Проверка рейтинга Lichess**
|
||||||
|
- Нажмите кнопку "МОЙ РЕЙТИНГ LICHESS"
|
||||||
|
- Введите свой ник на Lichess (если не вводили ранее)
|
||||||
|
- Бот покажет ваши текущие рейтинги на Lichess
|
||||||
|
|
||||||
|
3. **Проверка выполнения разрядной нормы**
|
||||||
|
- Нажмите кнопку "ПРОВЕРИТЬ РАЗРЯДНУЮ НОРМУ"
|
||||||
|
- Следуйте инструкциям бота для ввода информации о турнире
|
||||||
|
- Бот проверит, выполнили ли вы норму на разряд или КМС
|
||||||
|
|
||||||
|
4. **Автоматические уведомления**
|
||||||
|
- Бот автоматически проверяет изменения рейтинга два раза в день
|
||||||
|
- При изменении рейтинга вы получите уведомление
|
||||||
|
|
||||||
|
## Структура проекта
|
||||||
|
- `MyRatingSuperBot.py` - Основной файл бота
|
||||||
|
- `normy.csv` - Данные о разрядных нормах
|
||||||
|
- `data/users.db` - База данных пользователей (создается автоматически)
|
||||||
|
- `Dockerfile` и `docker-compose.yml` - Файлы для запуска в Docker
|
||||||
|
- `requirements.txt` - Зависимости Python
|
||||||
|
|
||||||
|
## Технические детали
|
||||||
|
Бот использует:
|
||||||
|
- Python 3.10
|
||||||
|
- pyTelegramBotAPI для работы с Telegram API
|
||||||
|
- BeautifulSoup и requests для парсинга данных с сайтов ФШР и Lichess
|
||||||
|
- SQLite для хранения данных пользователей
|
||||||
|
- APScheduler для периодической проверки изменений рейтинга
|
||||||
Loading…
x
Reference in New Issue
Block a user