Способ получения данных с чатов Телеграм используя экспорт сообщений

Способ получения данных с чатов Телеграм используя экспорт сообщений

Если вам нужно парсить такие данные как id, тип, дату сообщения, имя автора, текст сообщения, ссылку на пользователя с чатов Телеграм и при этом нужна очень большая производительность, предлагаем воспользоваться способом описаным ниже. Используя данный метод вы сможете парсить десятки тысяч чатов Телеграм со скоростью около 18000 сообщений в минуту.

Как пользоваться внутренним экспортом Telegram


Внутренний экспорт Telegram очень прост в использовании. Достаточно выбрать нужный чат и в его свойствах выбрать пункт Экспорт истории чата. Далее происходит настройка экспорта в которой вы можете выбрать что именно вы хотите включить в экспорт, формат, путь куда сохранить экспорт и временной промежуток.

TelegramDesktop_2021-11-09_17.40.07.png


Еще можно сделать экспорт абсолютно всех чатов которые у вас есть в Продвинутых настройках Telegram. Принцип тот же как и с экспортом отдельного чата, только больше опций и возможностей.

Как работает внутренний экспорт

Для примера и дальнейшего сравнения будет сделан самый простой тип экспорта, а именно только экспорт текста сообщений.

Bezymyannyi_-_Paint_2021-11-09_19.02.26.png




Результат экспорта - файл 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 которая использовалась в качестве примера внутреннего экспорта.

Пример парсинга на наших прокси:
A-Parser__Advanced_SE_Parser_%26_Analyze_tool_-_Google_Chrome_2021-11-09_18.35.07.png


Пример парсинга на серверных прокси:
2021-11-30-16-53-45.png


В результате имеем txt файл:

nov-09_18-25-35.txt_%E2%80%93_Bloknot_2021-11-09_18.43.12.png


Также результат можно получить в csv таблице для последующего импорта в Google таблицу:
2021-11-30-16-43-31.png


Достоинства экспорта A-Parser’ом в сравнении с внутренним экспортом

  • Достаточно неплохая скорость ≈7000 сообщений в минуту и ≈18000 сообщений в минуту на серверных прокси
  • Можно сразу парсить десятки тысяч чатов Telegram имея файл с ссылками на эти чаты
  • Добавление задания в работу на ночь и на следующий день работать с результатом
  • Запланировать задание с помощью планировщика и A-Parser сам его добавит в работу по плану
  • Нет ограничения по объему экспорта сообщений
  • Можно получить результат в csv таблице, sqlite, json
  • Фильтрация результатов по любому доступному результату

Недостатки экспорта A-Parser’ом в сравнении с внутренним экспортом

  • В несколько раз медленней экспорт. Если внутренний экспорт предоставил данные уже через минуту, то A-Parser’у на своих прокси потребовалось ≈8 минут, а на серверных прокси ≈3 минуты
  • Нужны прокси для парсинга
  • Нет возможности скачивать фотографии, голосовые сообщения, видеозаписи чата и т. д.
  • Нельзя выбрать временной промежуток для сообщений

Полезные ссылки:
Автор
Support Ilia
Просмотры
237
Первый выпуск
Обновление

Рейтинги

0,00 звёзд Оценок: 0

Ещё ресурсы от Support Ilia

Назад
Верх