Парсер сообщений из чатов телеграм
- Скачивание файла по ссылке после оплаты
- Передача файла с программой в формате zip-архива
- Инструкция по настройке в наличии
- Карта Сбербанк
- Карта Халва
- Юмани
Парсер сообщений и картинок из чатов Telegram
Общее описание
Программа представляет собой мощный инструмент для автоматизированного сбора сообщений из чатов Telegram. Она позволяет извлекать текстовые сообщения и изображения из указанных чатов, записывать их в файл, а также регулярно обновлять базу данных с новыми сообщениями. Данный парсер разработан на основе библиотеки Pyrogram, обеспечивающей удобный интерфейс взаимодействия с API Telegram.
Программа поддерживает два метода аутентификации:
- Использование бота (через токен) – подходит для работы с публичными каналами и чатами.
- Использование номера телефона (через API ID и API Hash) – предоставляет более широкие возможности, включая доступ к закрытым группам, где у пользователя есть соответствующие права.
Функциональные возможности
1. Гибкая аутентификация
Программа предлагает два способа подключения к Telegram API:
- Аутентификация через бот-токен: используется для сбора сообщений с публичных каналов и чатов.
- Аутентификация через номер телефона: позволяет использовать учетную запись пользователя для более широкого доступа к чатам.
При выборе второго метода аутентификации приложение автоматически загружает данные из файла Api.txt
, который содержит номер телефона, API ID и API Hash. В случае отсутствия или некорректного формата файла программа уведомляет пользователя об ошибке и завершает выполнение.
2. Автоматическое сохранение сообщений
Каждое сообщение, полученное из указанных чатов, автоматически записывается в текстовый файл messages.txt
с указанием следующих параметров:
- Название чата – позволяет определить источник сообщения.
- Дата и время отправки – помогает в дальнейшем анализе сообщений.
- Текст сообщения – извлекается из сообщения или его подписи.
3. Сохранение изображений
Помимо текстовых сообщений, программа автоматически загружает изображения, прикрепленные к сообщениям. Они сохраняются в отдельной папке img
, а в лог-файле фиксируется путь к каждому загруженному изображению.
4. Работа с несколькими чатами
Программа поддерживает одновременную работу с несколькими чатами. Их список загружается из текстового файла Список чатов.txt
. Если файл отсутствует или пуст, программа уведомляет пользователя и завершает выполнение.
5. Гибкий интервал обновления
Пользователь может задать интервал сбора сообщений (в секундах), после которого программа снова запрашивает новые сообщения из чатов. Это позволяет:
- Регулярно обновлять базу сообщений.
- Снижать нагрузку на сервер Telegram.
- Подстраиваться под потребности пользователя.
6. Обработка ошибок и отказоустойчивость
Программа предусматривает автоматическое переключение на следующий чат в случае ошибки при получении сообщений. Это особенно полезно при временных сбоях или ограничениях доступа.
7. Первоначальная загрузка истории чатов
Перед началом мониторинга новых сообщений программа загружает последние 100 сообщений из каждого указанного чата. Это позволяет сразу получить актуальную информацию и не дожидаться появления новых сообщений.
Техническая реализация
1. Подключение к Telegram API
Программа использует библиотеку Pyrogram
, которая обеспечивает удобное взаимодействие с API Telegram. Также используется asyncio
для асинхронного выполнения задач, что делает парсер эффективным и отзывчивым.
2. Обработка новых сообщений
Используется обработчик @app.on_message(filters.chat(CHAT_IDS))
, который автоматически реагирует на появление новых сообщений в указанных чатах и вызывает функцию save_message()
.
3. Циклическое обновление сообщений
Функция periodic_fetch()
реализует регулярный запрос новых сообщений с учетом заданной пользователем задержки.
4. Обработка и сохранение данных
- Текст сообщений записывается в
messages.txt
. - Изображения загружаются в папку
img
.
Программа автоматически создает необходимые папки, если они отсутствуют.
Применение
Данный парсер может быть полезен в различных сценариях, таких как:
✅ Анализ сообщений – сбор данных для последующего анализа и обработки.
✅ Мониторинг чатов – удобный способ отслеживать активность в чатах.
✅ Сохранение данных – архивирование переписки для отчетности или исследований.
✅ Автоматизированный контроль информации – используется в системах модерации и аналитики.