Если вам нужно парсить такие данные как id, тип, дату сообщения, имя автора, текст сообщения, ссылку на пользователя с чатов Телеграм и при этом нужна очень большая производительность, предлагаем воспользоваться способом описаным ниже. Используя данный метод вы сможете парсить десятки тысяч чатов Телеграм со скоростью около 18000 сообщений в минуту.
Как пользоваться внутренним экспортом Telegram
Внутренний экспорт Telegram очень прост в использовании. Достаточно выбрать нужный чат и в его свойствах выбрать пункт Экспорт истории чата. Далее происходит настройка экспорта в которой вы можете выбрать что именно вы хотите включить в экспорт, формат, путь куда сохранить экспорт и временной промежуток.
Еще можно сделать экспорт абсолютно всех чатов которые у вас есть в Продвинутых настройках Telegram. Принцип тот же как и с экспортом отдельного чата, только больше опций и возможностей.
Как работает внутренний экспорт
Для примера и дальнейшего сравнения будет сделан самый простой тип экспорта, а именно только экспорт текста сообщений.
Результат экспорта - файл result.json, в котором есть все данные чата, а именно: название чата, тип, id и все сообщения чата. Сообщения которые мы экспортировали включают в себя такие данные как id, тип, дату сообщения, имя автора, текст сообщения и другие данные которые являются частью сообщения.
Вот небольшая часть из файла для наглядности результата который сделал внутренний экспорт Telegram:
Достоинства внутреннего экспортаКод:{ "id": 31905, "type": "message", "date": "2020-03-26T15:09:28", "from": "Reset # Alexey S.", "from_id": "user319030003", "text": "Нашел )) но не работает $totalcount, его фиксили вроде?" }, { "id": 31906, "type": "message", "date": "2020-03-26T15:11:27", "from": "Yaroslav A-Parser Support", "from_id": "user268803471", "text": "Какая у вас версия парсера?" }, { "id": 31907, "type": "message", "date": "2020-03-26T15:12:37", "from": "Reset # Alexey S.", "from_id": "user319030003", "reply_to_message_id": 31906, "text": "да старая, 595" }, { "id": 31908, "type": "message", "date": "2020-03-26T15:12:56", "from": "Yaroslav A-Parser Support", "from_id": "user268803471", "text": "Нужно обновиться, там было много изменений" },
- Всё очень быстро и удобно. Экспорт группы https://t.me/a_parser произошел практически за минуту
- Есть возможность скачивать фотографии, голосовые сообщения, видеозаписи чата и т. д. Экспорт абсолютно всего из группы https://t.me/a_parser занимает около 10 минут
- Выбор временного промежутка сообщений для экспорта
- Выбор формата экспорта HTML / JSON
- Сообщения в файле результата идут строго по порядку
Недостатки внутреннего экспорта
- Максимальный объем экспорта данных только до 2000 Мб. Если в чате тысячи пользователей которые ведут обсуждения или у вас много чатов и вы хотите все вместе экспортировать, тогда 2000 Мб может быть мало в отдельных случаях
- Нужно вручную делать экспорт для каждого отдельного чата. А если делать экспорт всех чатов используя Продвинутые настройки, то нужно чтобы эти чаты были добавлены в ваш Telegram, и когда у вас стоит задача, например, спарсить сообщения из десяти тысяч чатов, тогда вам нужно будет сперва их добавить себе, и уже потом сделать экспорт. И не факт что вам позволить это сделать первый недостаток
Экспорт сообщений Telegram используя A-Parser
Для этой задачи A-Parser имеет встроенный парсер Telegram::GroupScraper - Парсер данных из публичных групп в Телеграм.
Этот парсер собирает из публичных групп в Telegram данные о сообщениях. Парсер групп/чатов Телеграм выполняет сбор участников, которые что-то писали в группе, либо есть сервисное уведомление о их присоединении к группе. Вы можете парсить весь контент из нужных групп, а именно: текст, картинки, ссылки на видео, получать информацию о дате публикации, авторе (имя, ссылка на профиль, аватар).
Пример парсинга сообщений в A-Parser
Для примера спарсим сообщения той самой группы https://t.me/a_parser которая использовалась в качестве примера внутреннего экспорта.
Пример парсинга на наших прокси:
Пример парсинга на серверных прокси:
В результате имеем txt файл:
Также результат можно получить в csv таблице для последующего импорта в Google таблицу:
Достоинства экспорта A-Parser’ом в сравнении с внутренним экспортом
- Достаточно неплохая скорость ≈7000 сообщений в минуту и ≈18000 сообщений в минуту на серверных прокси
- Можно сразу парсить десятки тысяч чатов Telegram имея файл с ссылками на эти чаты
- Добавление задания в работу на ночь и на следующий день работать с результатом
- Запланировать задание с помощью планировщика и A-Parser сам его добавит в работу по плану
- Нет ограничения по объему экспорта сообщений
- Можно получить результат в csv таблице, sqlite, json
- Фильтрация результатов по любому доступному результату
Недостатки экспорта A-Parser’ом в сравнении с внутренним экспортом
- В несколько раз медленней экспорт. Если внутренний экспорт предоставил данные уже через минуту, то A-Parser’у на своих прокси потребовалось ≈8 минут, а на серверных прокси ≈3 минуты
- Нужны прокси для парсинга
- Нет возможности скачивать фотографии, голосовые сообщения, видеозаписи чата и т. д.
- Нельзя выбрать временной промежуток для сообщений
Полезные ссылки:
-
Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 2600+ и мы растем!Скрыть объявление
Способ получения данных с чатов Телеграм используя экспорт сообщений
Если вам нужно парсить такие данные как id, тип, дату сообщения, имя автора, текст сообщения, ссылку