Практика работы с Telegram
Бесплатный парсер участников Telegram на Python: доступный список
Небольшой скрипт для выгрузки видимых участников своего сообщества в JSONL. Настройка, состав данных и проверка полноты результата.
Для какой задачи подходит
Если нужен разовый список доступных участников своей группы для внутренней сверки, можно использовать самостоятельный скрипт Telethon. Он сохраняет user_id, username и признак бота. Номера телефонов, скрытый список подписчиков и готовая база чужих пользователей в результат не входят.
Скачать Python-примеры с README и лицензией MIT →
В архиве только исходный код и инструкции. Токены, аккаунты и готовые базы пользователей в него не входят. Код бесплатный; компьютер, хостинг и интернет оплачиваются отдельно.
Это один узкий сценарий бесплатного парсера. Для парсинга сообщений, комментариев, поиска сообществ и регулярных задач нужны соответствующие методы и условия доступа. Наличие username сегодня не гарантирует, что он сохранится у пользователя позже.
Установка и вход
В отдельном виртуальном окружении установите telethon==1.45.0. Для своего приложения получите API ID/hash и задайте TELEGRAM_API_ID и TELEGRAM_API_HASH переменными среды. Используйте отдельный файл TELEGRAM_SESSION, не общий с работающим клиентом.
При первом реальном запуске потребуется вход вашего аккаунта. Скрипт ничего не рассылает и не приглашает участников. По умолчанию он только показывает выбранную задачу.
Команда выгрузки
python export_telegram.py members --source @your_owned_group --limit 100 --output members.jsonl
python export_telegram.py members --source @your_owned_group --limit 100 --output members.jsonl --executeПодставьте свою группу и сначала проверьте режим просмотра. Флаг --execute включает обращение к Telegram. Предел выбирайте по задаче: в примере 1–10000 записей, это локальная защита от случайно большой выгрузки, а не объявленный лимит Telegram. Существующий файл не перезаписывается.
Состав результата и приёмка
| Поле | Как использовать |
|---|---|
| user_id | Сопоставление записей внутри доступного вам набора данных. |
| username | Может отсутствовать; не заменяйте пустоту выдуманным адресом. |
| is_bot | Отделение бот-аккаунтов при анализе списка. |
- Проверьте, что выбран именно ваш источник и аккаунт имеет нужный доступ.
- Сравните несколько известных участников с результатом.
- Сопоставьте число строк с заданным limit и видимостью списка.
- Храните выгрузку локально и используйте только для своей обоснованной задачи. Само присутствие в группе не означает согласия на личную рассылку.
Почему результат может быть неполным
Telegram может ограничивать доступность участников. Итератор библиотеки обрабатывает страницы ответа, но не открывает скрытые данные. Поиск по алфавиту и повторные запросы не дают права обещать полный список.
При FloodWait скрипт останавливается, сохраняя записанную часть. После ожидания используйте новый файл и сопоставление по user_id. Подробный порядок установки есть в README; синтаксис проверен локально, реальная авторизация при подготовке статьи не выполнялась.
Источники и документация
Одна платформа · разные задачи
Подписка Telecobra
Соберите инструменты для работы с Telegram в одном кабинете. Сроки доступа, цены и условия — на странице подписки.
В этой инструкции описана только часть возможностей платформы. Полный список доступен в разделе функций.