Парсер аудитории из чатов Telegram
Скрипт для сбора подробной информации об участниках из чатов Telegram. Результаты сохраняются в файл Microsoft Excel (*. xlsx) в котором указаны: ID пользователя, Usrename, Имя, Когда был онлайн, Телефон (если не скрыт). В файле будут три вкладки: Все пользователи, Обычные, Премиум.
Видео работы скрипта:
https://drive.google.com/file/d/1DJhNz9vayilYiK8aU6DNf8GzJMdU5HnN/view?usp=sharing
Для работы данного скрипта у вас должен быть установлен Python. Скачать можно здесь. Работоспособность данного скрипта тестировалась на версии Python 3.9.1.
- Для запуска парсера пользователей на Python, установите необходимые библиотеки, если они ещё не установлены:
pip install pyrogram tgcrypto openpyxl progressbar2
Произведите настройку скрипта
- Получите свой API_ID и API_HASH:
Зарегистрируйтесь на https://my.telegram.org/apps. Переходим на этот сайт в раздел API Development Tools, создаём приложение заполняя только название приложения, короткое имя и выбрать версию Desktop. После чего получаем нужные нам данные.
Небольшая видеоинструкция: https://www.youtube.com/watch?v=L4UnzeLsFO4
Создайте приложение, чтобы получить API_ID и API_HASH.
Открываем файл Bot.py в редакторе, таком как Notepad++ или Visual Studio Code. На 54 - 55 строке вводим свои API_ID и API_HASH. И сохраняем файл.

- Файл с чатами откуда мы будем парсить пользователей
links.txt:
chat_username1 chat_username2 chat_username3
Список чатов должен быть без https://t.me/, каждый чат с новой строки.
Внимание! Парсер собирает информацию только из чатов с открытым списком участников! Проверяейте перед формированием списка.
Запуск скрипта
Через консоль:
python Bot.py
Или можно просто кликнуть по файлу.
При первом запуске программа запросит авторизацию через ваш номер телефона, и код будет отправлен в Telegram. Вы должны ввести код, полученный в Telegram. При следующих запусках данная процедура больше не потребуется.

Проверьте, что файл сессии (client.session) создается рядом со скриптом. Скрипт начнет собирать информацию о пользователях по заданному списку чатов.

Скрипт сохранит результаты в файл users.xlsx с отчетом по каждому аккаунту и чату.

Дополнительно скрипт сохранит список пользователей в отдельный файл users.txt с юзернеймами:

Важно
- Этот код работает только для публичных чатов (с доступным
@usernameили прямой ссылкой). - Убедитесь, что файл
links.txtзаполнен правильно, без лишних пробелов или пустых строк. - Telegram может ограничить запросов к чатам, с которых можно парсить за короткий промежуток времени. Используйте разумные задержки. Парсите не более 50 чатов за один раз.
- Соблюдайте правила Telegram, чтобы избежать блокировок.
Внимание! Если вы собираетесь очень интенсивно и много парсить, на всякий случай не используйте свой личный аккаунт во избежание бана! Пользуйтесь куплеными аккаунтами, которые не жалко будет потерять если что.


