Парсинг
Режим «Парсинг» в Multogram: сбор участников групп и сообщений из каналов и чатов — разово или в режиме ожидания новых сообщений, с фильтрами по словам и датам и выгрузкой в CSV, XLSX, JSON или SQLite.
Где в приложении
Доступ
Аккаунты
Риск ограничений
Парсинг собирает данные из Telegram и сохраняет их в файл: участников групп — для инвайтинга и рассылок, или сообщения из каналов и чатов — для анализа и мониторинга.
Что можно собрать
| Что парсить | Режим работы | Результат |
|---|---|---|
| Участников в группе | — | Список участников: имя, фамилия, телефон (если открыт), username, ID |
| Сообщения | Парсер | Уже опубликованные сообщения — разовый проход до лимита |
| Сообщения | Ожидатель | Новые сообщения по мере появления — мониторинг, пока не сработает ограничение или вы не остановите задачу |
Настройки
Тип и цели
| Параметр | Что делает |
|---|---|
| Что парсить | Сообщения или Участников в группе |
| Режим работы | Для сообщений: Парсер — разово, Ожидатель — следить за новыми |
| Цели | Каналы, группы и чаты, по одному в строке: @channel, https://t.me/channel, числовой ID |
Фильтры сообщений
| Параметр | Что делает |
|---|---|
| Извлекаемые данные | Какие колонки сохранить: Отправитель (ID, username, имя), Текст, Медиа (тип вложения: photo, video, voice, document и т. д.). Номер сообщения, дата и цель сохраняются всегда. Если отмечен только Отправитель, в файле будут авторы: каждый — одной строкой на чат, с его последним сообщением |
| Фильтр сообщений | Поиск по словам и/или По дате |
| Ключевые слова | Сообщение попадёт в файл, если содержит хотя бы одно из слов. Регистр не важен |
| Диапазон дат сообщений | Сохранять только сообщения из этого периода. Первый и последний день входят целиком, по местному времени; можно выбрать и один день |
Лимиты и задержки
| Параметр | По умолчанию | Для чего |
|---|---|---|
| Сообщений на цель | 400–500 | Сколько сообщений просмотреть в цели (Парсер); число выбирается заново для каждой цели. Допустимо 1–100 000 |
| Задержка между целями (сек) | 3–7 | Пауза перед следующей целью (Парсер) |
| Задержка между запросами (сек) | 1–3 | Пауза между порциями истории — защита от FloodWait (Парсер) |
| Интервал проверки (сек) | 10–20 | Как часто проверять цели на новые сообщения (Ожидатель) |
| Задержка между целями (сек) | 2–4 | Пауза между целями внутри одной проверки (Ожидатель) |
| Остановить после N сообщений | 0–0 — без ограничения | Ожидатель остановится, собрав столько сообщений; число выбирается один раз при запуске |
| Макс. время мониторинга, мин | 0–0 — без ограничения | Ожидатель остановится через столько минут; число выбирается один раз при запуске |
| Участников парсить | 4000–5000 | Сколько участников собрать из группы; число выбирается заново для каждой группы |
| Задержка между запросами (сек) | 2–4 | Пауза между порциями участников — защита от FloodWait |
Все лимиты и задержки задаются диапазоном «от – до», а конкретное число выбирается случайно: задержка — перед каждой паузой, лимит на цель — для каждой цели, ограничения Ожидателя — один раз при запуске. Так запросы не идут с одинаковым интервалом, а из каждой цели собирается разное количество — работа выглядит естественнее. Нужно фиксированное значение — укажите одинаковые границы, например 5–5. У ограничений Ожидателя 0–0 означает «без ограничения».
Экспорт
| Параметр | По умолчанию | Что делает |
|---|---|---|
| Формат экспорта | CSV и XLSX | CSV, XLSX, JSON и/или SQLite (.db) — можно отметить несколько |
| Куда сохранить | — | Папка для файла. Создаётся, если её нет |
Сохраняется каждый отмеченный формат — отдельным файлом с теми же данными. У каждой цели свой
файл; имя — тип парсинга, цель и время, например users_in_group_mychannel_1696330000000.xlsx. У
Ожидателя — тип, номер аккаунта и время. Файл с тем же именем перезаписывается. В SQLite данные лежат в
таблице parsed.
Как работает
Список целей общий для всех аккаунтов задачи. Аккаунт забирает из него следующую цель, парсит её и берёт следующую, пока список не опустеет. Каждую цель парсит ровно один аккаунт — несколько аккаунтов просто быстрее проходят список. Если аккаунт получил FloodWait, его незаконченная цель возвращается в список — её доделает другой аккаунт (или этот же после ожидания).
Участники. Аккаунт открывает группу и забирает участников порциями до лимита Участников парсить, с паузой между порциями. В журнале — «Участников собрано из …: N». Результат по цели сохраняется в её файл.
Сообщения — Парсер. Аккаунт читает историю каждой цели от новых сообщений к старым, порциями, до лимита Сообщений на цель. Фильтры применяются к каждому сообщению: лимит считает просмотренные сообщения, а в файл попадают только подошедшие.
Что попадает в файл. Только сообщения с тем, что вы отметили: если отмечен Текст, сообщение без текста (например, стикер или фото без подписи) не попадёт, если только не отмечены Медиа и у него есть вложение. Служебные события — вход и выход участников, закреп и т. п. — не сообщения: они не попадают в файл и не считаются в лимит. Каждое сообщение — одна строка, повторов нет.
Сообщения — Ожидатель. Цели делятся между аккаунтами по кругу, и каждый следит за своими. При запуске режим запоминает последнее сообщение в каждой цели, а потом по кругу проверяет цели и сохраняет только новые сообщения. Файл перезаписывается после каждой находки, так что его можно открывать во время работы. Остановка — по одному из ограничений или вручную.
Сообщения при парсинге не отмечаются прочитанными.
Ограничения
- Участники видны в группах, а не в каналах. Список подписчиков канала Telegram показывает только его администраторам.
- Телефоны в выгрузке будут только у тех участников, которые открыли номер в настройках приватности.
- Закрытые группы и каналы — аккаунт должен в них состоять.
- Большие группы. Telegram отдаёт не всех участников очень больших групп — часть списка может отсутствовать.
Рекомендации
- Несколько аккаунтов — для больших списков. Цели делятся между аккаунтами, каждая парсится один раз, поэтому дубликатов не будет; один аккаунт тоже справится, просто медленнее.
- Не занижайте задержки. Парсинг — это много запросов подряд; диапазоны вроде 2–5 секунд защищают от FloodWait, а разброс внутри диапазона делает паузы непохожими друг на друга.
- Для инвайтинга парсьте участников похожих по теме групп, а затем используйте файл в Инвайтинге.
- Ожидателю — ограничение. Задайте Макс. время мониторинга или Остановить через (мин) в окне задачи, чтобы мониторинг не шёл бесконечно.
Частые вопросы
Почему файл пустой или не создан?
Если ничего не собрано, файл не сохраняется — в журнале будет «Сохранять нечего: данные не собраны». Проверьте фильтры: ключевые слова и даты могли отсеять всё. Проверьте, что аккаунт имеет доступ к цели.
Можно ли спарсить подписчиков канала?
Нет, если вы не администратор канала: Telegram не показывает список подписчиков. Парсите участников групп — например, группы обсуждения этого канала.
Отмечаются ли сообщения прочитанными?
Нет, парсинг не меняет статус прочтения.
Почему в файле меньше сообщений, чем «Сообщений на цель»?
Лимит считает просмотренные сообщения, а фильтры по словам и датам оставляют только подходящие. Кроме того, лимит для каждой цели выбирается в диапазоне — он может оказаться ближе к нижней границе. Или в цели меньше сообщений, чем лимит.
Как сохранить в CSV, а не в XLSX?
В Формате экспорта оставьте отмеченным только CSV.
Обновлено
Контент-бот
Режим «Контент-бот» в Multogram: следит за каналами-источниками и переносит новые посты в ваши каналы — копией или с переписыванием через ИИ, сразу или после одобрения в Telegram-боте. Связки каналов, фильтр по словам, интервалы.
Модули
Вкладка «Модули» в Multogram: библиотека установленных модулей (.agm) — готовых сценариев автоматизации со своими настройками. Как установить, запустить, обновить и удалить модуль, какие режимы нужны модулю и почему он может быть недоступен.