Создание единого проекта Lichess Statistics Ecosystem
- Объединены три проекта в один репозиторий - LichessWebServices - REST API для статистики - LichessClientTG_bot - Telegram бот с поддержкой множества пользователей - LichessWebView - Веб-интерфейс для просмотра пользователей и игроков - Добавлен общий docker-compose.yml для запуска всех сервисов - Добавлен скрипт start.sh для удобного запуска - Добавлен README с полным описанием проекта
This commit is contained in:
commit
a08fc8c962
32 changed files with 4990 additions and 0 deletions
79
LichessClientTG_bot/view_db.py
Normal file
79
LichessClientTG_bot/view_db.py
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
#!/usr/bin/env python3
|
||||
import sqlite3
|
||||
import json
|
||||
from datetime import datetime
|
||||
|
||||
def view_database():
|
||||
"""View database contents"""
|
||||
db_path = "data/lichess_bot.db"
|
||||
|
||||
try:
|
||||
with sqlite3.connect(db_path) as conn:
|
||||
cursor = conn.cursor()
|
||||
|
||||
print("🗄️ СОДЕРЖИМОЕ БАЗЫ ДАННЫХ LICHESS BOT")
|
||||
print("=" * 50)
|
||||
|
||||
# Show tables
|
||||
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
|
||||
tables = cursor.fetchall()
|
||||
print(f"\n📋 Таблицы в базе: {[table[0] for table in tables]}")
|
||||
|
||||
# Show gamers table
|
||||
print("\n👥 ТАБЛИЦА GAMERS:")
|
||||
print("-" * 30)
|
||||
cursor.execute("SELECT * FROM gamers")
|
||||
gamers = cursor.fetchall()
|
||||
|
||||
if gamers:
|
||||
print("ID | Username | Token | Active | Period | User ID | Created")
|
||||
print("-" * 70)
|
||||
for gamer in gamers:
|
||||
if len(gamer) == 6: # Old format without user_id
|
||||
gamer_id, username, token, is_active, period_minutes, created_at = gamer
|
||||
user_id = "None"
|
||||
else: # New format with user_id
|
||||
gamer_id, username, token, is_active, period_minutes, user_id, created_at = gamer
|
||||
|
||||
token_display = "***" if token else "None"
|
||||
active_display = "✅" if is_active else "❌"
|
||||
user_id_display = str(user_id) if user_id else "None"
|
||||
print(f"{gamer_id:2} | {username:10} | {token_display:6} | {active_display:6} | {period_minutes:6} | {user_id_display:7} | {created_at}")
|
||||
else:
|
||||
print("Таблица пуста")
|
||||
|
||||
# Show chat_active_gamers table
|
||||
print("\n💬 ТАБЛИЦА CHAT_ACTIVE_GAMERS:")
|
||||
print("-" * 35)
|
||||
cursor.execute("SELECT * FROM chat_active_gamers")
|
||||
chat_gamers = cursor.fetchall()
|
||||
|
||||
if chat_gamers:
|
||||
print("Chat ID | Gamer ID")
|
||||
print("-" * 20)
|
||||
for chat_gamer in chat_gamers:
|
||||
chat_id, gamer_id = chat_gamer
|
||||
print(f"{chat_id:7} | {gamer_id:8}")
|
||||
else:
|
||||
print("Таблица пуста")
|
||||
|
||||
# Show database info
|
||||
print(f"\n📊 ИНФОРМАЦИЯ О БАЗЕ:")
|
||||
print("-" * 25)
|
||||
cursor.execute("SELECT COUNT(*) FROM gamers")
|
||||
total_gamers = cursor.fetchone()[0]
|
||||
print(f"Всего игроков: {total_gamers}")
|
||||
|
||||
cursor.execute("SELECT COUNT(*) FROM gamers WHERE is_active = TRUE")
|
||||
active_gamers = cursor.fetchone()[0]
|
||||
print(f"Активных игроков: {active_gamers}")
|
||||
|
||||
cursor.execute("SELECT COUNT(*) FROM gamers WHERE period_minutes > 0")
|
||||
monitored_gamers = cursor.fetchone()[0]
|
||||
print(f"Игроков с периодическими уведомлениями: {monitored_gamers}")
|
||||
|
||||
except Exception as e:
|
||||
print(f"❌ Ошибка при чтении базы данных: {e}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
view_database()
|
||||
Loading…
Add table
Add a link
Reference in a new issue