Приложение для получения сообщений и статистики из Telegram каналов с использованием Telethon API.
- Получение последних сообщений из Telegram канала
- Анализ статистики канала (средние просмотры, репосты) - анализ ведется от новых сообщений к старым
- Фильтрация сообщений по наличию текста
- Получение статистики конкретного сообщения
- Преобразование данных в JSON формат
- Возможность вывода результата в консоль или сохранения в файл
- Python 3.7 или выше
- Учетная запись Telegram
- API ID и API Hash от Telegram (получить здесь)
- Клонировать репозиторий:
git clone <url-репозитория>
cd <имя-папки-репозитория>- Создать и активировать виртуальное окружение:
python -m venv .venv
source .venv/bin/activate # Linux/MacOS
# или
.venv\Scripts\activate # Windows- Установить зависимости:
pip install -r requirements.txt- Настроить переменные окружения:
cp .env.example .envЗатем отредактировать файл .env, вставив свои данные API Telegram.
python main.py messages @channel_nameили
python main.py messages https://t.me/channel_nameДополнительные параметры:
- Указание количества сообщений:
python main.py messages @channel_name -l 20python main.py stats @channel_nameДополнительные параметры:
- Указание количества сообщений для анализа:
python main.py stats @channel_name -l 50- Указание максимальной даты сообщений (анализируются только сообщения старше этой даты):
python main.py stats @channel_name -d 2023-01-01- Учет только сообщений с текстом:
python main.py stats @channel_name -tpython main.py message https://t.me/channel_name/123Для всех команд доступны следующие параметры:
- Сохранение результата в файл:
python main.py <command> <args> -o result.json- Получение справки:
python main.py --helpПри первом запуске приложение попросит вас авторизоваться в Telegram. Для этого следуйте инструкциям в консоли (ввод номера телефона и кода подтверждения).
После успешной авторизации создается файл сессии (по умолчанию tg_session.session), и в последующих запусках авторизация не требуется.
MIT