Skip to content

JacobJanuary/tg_parcer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔍 Telegram Chat Parser

Парсер чатов Telegram на Python. Извлекает сообщения из каналов и групп, скачивает медиафайлы, экспортирует в JSON/CSV.

Установка

# Клонировать репозиторий
cd TG_parcer

# Создать и активировать виртуальное окружение
python3 -m venv venv
source venv/bin/activate

# Установить зависимости
pip install -r requirements.txt

# Настроить API credentials
cp .env.example .env
# Отредактировать .env — указать API_ID, API_HASH и PHONE

Получение API credentials

  1. Зайдите на my.telegram.org
  2. Авторизуйтесь
  3. Перейдите в API Development Tools
  4. Создайте приложение → скопируйте api_id и api_hash

Использование

# Парсинг публичного канала (последние 100 сообщений, JSON)
python main.py --chat @durov --limit 100

# Парсинг с экспортом в оба формата + скачивание медиа
python main.py --chat https://t.me/some_channel --format both --media

# Парсинг по ID, только CSV, только фото и документы
python main.py --chat -1001234567890 --format csv --media --media-types photo,document

# Все сообщения из канала (без лимита)
python main.py --chat @channel_name --format json

Параметры

Параметр Описание По умолчанию
--chat Username, ссылка или ID чата (обязательный)
--limit Макс. кол-во сообщений все
--format json, csv или both json
--media Скачивать медиафайлы нет
--media-types Типы: photo,video,document все
--output-dir Папка для результатов output/

Структура вывода

output/
└── channel_name/
    ├── messages.json
    ├── messages.csv
    └── media/
        ├── photo_2025-01-01.jpg
        ├── video_2025-01-02.mp4
        └── document.pdf

🎧 Real-Time Listener

Слушайте новые сообщения в выбранных чатах в реальном времени.

Шаг 1: выберите чаты

# Показать все группы и выбрать для прослушивания
python list_chats.py --select

# Или только каналы
python list_chats.py --channels --select

# Или все чаты (включая личные)
python list_chats.py --all --select

Шаг 2: запустите listener

# Слушать выбранные чаты (из selected_chats.json)
python listener.py

# Или указать чаты напрямую
python listener.py --chats @channel1 @channel2

# С сохранением медиа и логом в файл
python listener.py --save-media --output messages.jsonl

Listener показывает сообщения в реальном времени с цветным выводом, а также отслеживает редактирование и удаление сообщений.

Первый запуск

При первом запуске Telethon запросит код подтверждения из Telegram. После успешной авторизации сессия сохраняется в .session файл — повторный ввод кода не потребуется.

Если включена двухфакторная аутентификация (2FA), также потребуется ввести облачный пароль.

About

Telegram Chat Parser — Extract messages, media, and data from Telegram channels and groups.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages