LichessStatTgWeb/LichessWebServices/README.md
vrubelroman a08fc8c962 Создание единого проекта Lichess Statistics Ecosystem
- Объединены три проекта в один репозиторий
- LichessWebServices - REST API для статистики
- LichessClientTG_bot - Telegram бот с поддержкой множества пользователей
- LichessWebView - Веб-интерфейс для просмотра пользователей и игроков
- Добавлен общий docker-compose.yml для запуска всех сервисов
- Добавлен скрипт start.sh для удобного запуска
- Добавлен README с полным описанием проекта
2025-10-26 20:23:26 +03:00

121 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Lichess Statistics API
REST API сервис для получения статистики игроков Lichess.org по играм и решению задач.
## Возможности
- Получение статистики за сегодняшний день
- Получение статистики за вчерашний день
- Получение статистики за последние 7 дней
- Поддержка режимов игры: Bullet, Blitz, Rapid
- Статистика по решению задач (пазлов)
- Расчет изменения рейтинга
- Подсчет побед, поражений и ничьих
## Запуск с Docker
### 1. Сборка и запуск контейнера
```bash
# Сборка образа
docker-compose build
# Запуск сервиса
docker-compose up -d
```
### 2. Проверка работы
Сервис будет доступен по адресу: http://localhost:8000
- Документация API: http://localhost:8000/docs
- Проверка здоровья: http://localhost:8000/health
## API Endpoints
### Получить статистику за сегодня
```
GET /stats/{username}/today
```
### Получить статистику за вчера
```
GET /stats/{username}/yesterday
```
### Получить статистику за неделю
```
GET /stats/{username}/week
```
## Примеры использования
### Статистика за сегодня
```bash
curl http://localhost:8000/stats/vrubelroman/today
```
### Статистика за вчера
```bash
curl http://localhost:8000/stats/vrubelroman/yesterday
```
### Статистика за неделю
```bash
curl http://localhost:8000/stats/vrubelroman/week
```
## Формат ответа
```json
{
"message": "Статистика за сегодняшний день",
"data": {
"username": "vrubelroman",
"tasks": {
"total": 28,
"solved": 25,
"unsolved": 3
},
"games": {
"bullet": {
"games_played": 7,
"rating_change": 30,
"final_rating": 2320,
"wins": 5,
"losses": 0,
"draws": 0
},
"blitz": {
"games_played": 5,
"rating_change": 32,
"final_rating": 2224,
"wins": 5,
"losses": 0,
"draws": 0
},
"rapid": {
"games_played": 2,
"rating_change": -10,
"final_rating": 2210,
"wins": 1,
"losses": 1,
"draws": 0
}
}
}
}
```
## Остановка сервиса
```bash
docker-compose down
```
## Логи
Для просмотра логов:
```bash
docker-compose logs -f
```