📊 FoxFord Telegram Analytics
Аналитика сообщений в Telegram чатах образовательной платформы FoxFord с использованием Pyrogram API.
🎯 О проекте
Этот репозиторий содержит инструменты для глубокого анализа активности в Telegram чатах FoxFord, включая:
-
📈 Статистику сообщений и активности пользователей -
👥 Топ участников по активности -
📅 Временные паттерны активности -
🔤 Анализ популярных слов и эмодзи -
🎬 Статистику медиа контента -
💬 Анализ взаимодействий и ответов
🚀 Возможности
Основная аналитика
- Общая статистика: количество сообщений, символов, слов, уникальных пользователей
- Рейтинги пользователей: топ по сообщениям и символам с процентным соотношением
- Типы контента: текст, фото, видео, документы, стикеры, голосовые сообщения
- Временная активность: распределение по часам, дням и месяцам
Углубленный анализ
- Популярные слова: фильтрация и подсчет часто используемых терминов
- Эмодзи статистика: самые популярные эмодзи в чате
- Статистика ответов: кому больше всего отвечают участники
- Медиа контент: детальная статистика по типам файлов
📁 Структура проекта
FF-8CLS-TG_STAT/
├── src/
│ ├── analyze_days.py # Анализ активности по дням
│ ├── telegram_analytics.py # Основной скрипт анализа
| └── config.py # Конфигуратор проекта
├── data/
│ └── analytics/ # Результаты анализа в JSON
├── LICENSE
└── README.md
⚡ Быстрый старт
1. Клонирование репозитория
git clone https://hub.mos.ru/Vadim-Khristenko/FF-8CLS-TG_STAT.git
cd FF-8CLS-TG_STAT
2. Установка зависимостей
pip install kurigram asyncio
Kurigram - Это поддерживаемый fork Pyrogram
3. Настройка API
- Получите API credentials на https://my.telegram.org
- Заполните данные в config.json:
API_ID = your_api_id
API_HASH = "your_api_hash"
CHAT_ID = -1001234567890 # ID чата FoxFord
4. Запуск анализа
cd src
python telegram_analytics.py
📊 Пример результатов
Общая статистика
📈 ОБЩАЯ СТАТИСТИКА:
├── Всего сообщений: 211,547
├── Всего символов: 8,462,340
├── Всего слов: 1,245,678
├── Уникальных пользователей: 2,847
└── Среднее сообщений на пользователя: 74.31
Топ активных участников
👑 ТОП ПОЛЬЗОВАТЕЛЕЙ ПО СООБЩЕНИЯМ:
├── 1. Александр @alex_study
│ 📩 3,247 сообщений (1.53%)
│ 📝 124,578 символов
│ 📏 38.4 символов в среднем
├── 2. Мария @maria_fox
│ 📩 2,891 сообщений (1.37%)
│ 📝 156,234 символов
│ 📏 54.0 символов в среднем
🛠 ️ Технические особенности
Оптимизация производительности
- Batch обработка: 200 сообщений за запрос
- Smart delays: 0.5s между запросами + FloodWait handling
- Memory efficient: обработка больших объемов данных
- Error handling: автоматическое восстановление при ошибках
Детальное логирование
[11:51:54.123] [00:00:02] 📦 === БАТЧ #1 ===
[11:51:54.124] [00:00:02] ℹ️ Запрос: 200 сообщений | Offset: 0 | Осталось: 211,000
[11:51:55.456] [00:00:03] ✅ Батч завершен: +200 | Всего: 200/211,000 (0.09%)
[11:51:55.892] [00:00:03] 📊 PERF | Скорость: 113.0 msg/s | FloodWaits: 0 | Ошибки: 0
📈 Статистика репозитория
Анализируемые чаты FoxFord
- Чат классов школьники
- Предметные группы
- Чаты поддержки
Периоды анализа
-
🔥 2024: полный год активности -
📊 Регулярные обновления: ежемесячно
🔧 Конфигурация
Лимиты и настройки
OUR_LIMIT = 12345 # Максимум сообщений для анализа
API_LIMIT = 200 # Сообщений за запрос (Telegram API)
📊 Форматы вывода
JSON файлы
- Полная статистика: все метрики в структурированном виде
- Метаданные: время анализа, производительность, ошибки
- Топ списки: расширенные рейтинги пользователей
Консольный вывод
- Цветное логирование: с эмодзи и временными метками
- Прогресс бары: визуальное отображение прогресса
- Статистика производительности: в реальном времени
🤝 Участие в проекте
Как внести вклад
- Fork репозитория
- Создайте feature branch (
git checkout -b feature/amazing-feature
) - Commit изменения (
git commit -m 'Add amazing feature'
) - Push в branch (
git push origin feature/amazing-feature
) - Откройте Pull Request
Идеи для развития
-
Веб-интерфейс для просмотра статистики -
Сравнение активности между разными чатами -
Анализ настроения сообщений (sentiment analysis) -
Экспорт в различные форматы (CSV, Excel) -
API для получения статистики
📄 Лицензия
Этот проект лицензирован под MIT License - подробности в файле LICENSE.
⚠ ️ Важные замечания
- Приватность: анализируются только публичные чаты FoxFord
- API лимиты: соблюдаются все ограничения Telegram API
- Этичность: сбор данных осуществляется для образовательных целей
📞 Контакты
- GitHub: @Vadim-Khristenko
- Telegram: @vai_programmer
- Email: just@vai-prog.ru
🙏 Благодарности
- Pyrogram - за отличную библиотеку для Telegram API
- FoxFord - за предоставление образовательной платформы
- Сообщество разработчиков - за поддержку и советы
📊 Статистика проекта обновляется ежемесячно
🔄 Последнее обновление: 2025-05-24