For english readme: README-EN.md
Телеграм-бот для обработки и анализа данных бенчмарков из различных источников.
Этот бот предназначен для приема файлов бенчмарков от пользователей, автоматического определения их формата, парсинга данных и генерации подробных отчетов в форматах XLSX и CSV. Поддерживаются различные форматы бенчмарков, включая CapFrameX, MSI Afterburner и пользовательские форматы.
- Автоматическое определение формата файлов
- Поддержка нескольких форматов бенчмарков:
- Файлы бенчмарков CapFrameX (с автоматическим объединением нескольких файлов)
- MSI Afterburner + RivaTuner Statistics Server
- Пользовательский формат (CSV, TSV, JSON)
- Детальный статистический анализ
- Генерация отчетов в форматах XLSX и CSV
- Поддержка как стандартного API Telegram, так и пользовательских/локальных серверов API
- Режимы Webhook и polling
- Python 3.10+
- Токен Telegram бота (получить у @BotFather)
- Клонируйте репозиторий:
bash git clone <repository-url>
cd BenchmarkCalculatorBot
- Установите зависимости:
bash
pip install -r requirements.txt
- Создайте файл
.envна основе.env.exampleи настройте токен бота:
env
BOT_TOKEN=your_actual_bot_token_here
CUSTOM_API_SERVER=your_host:your_port
Бот может быть настроен с помощью переменных окружения в файле .env:
- [BOT_TOKEN] - Токен вашего Telegram бота
- [RUN_MODE] - Режим работы: "polling" или "webhook" (по умолчанию: "polling")
- [CUSTOM_API_SERVER] - URL пользовательского сервера API Telegram (необязательно)
- Запустите бот:
bash
python main.py
-
В Telegram найдите своего бота и отправьте ему файл бенчмарка.
-
Бот автоматически определит формат, обработает данные и вернет подробные отчеты.
-
CapFrameX: JSON-файлы от инструмента бенчмаркинга CapFrameX
- Несколько файлов автоматически объединяются в один отчет
- Детальный анализ времени кадров
-
MSI Afterburner: Текстовые файлы от MSI Afterburner + RivaTuner Statistics Server
- Извлечение данных о частоте кадров
- Статистический анализ
-
Пользовательский формат: Универсальный парсер для различных форматов CSV, TSV и JSON
- Гибкая обработка данных
BenchmarkCalculatorBot/
├── config/ # Файлы конфигурации
├── handlers/ # Обработчики сообщений Telegram
├── parsers/ # Парсеры файлов бенчмарков
├── services/ # Сервисы обработки
├── utils/ # Вспомогательные функции
├── main.py # Точка входа в приложение
├── webhook_server.py # Реализация сервера вебхуков
└── ssl_generator.py # Генератор SSL-сертификатов для вебхука
Этот проект лицензирован по лицензии MIT - подробности смотрите в файле LICENSE.