Skip to main content

Telegram::GroupScraper - Data scraper for public groups in Telegram

Overview of Telegram Groupscraper data scraper


This scraper collects data about messages from public groups in Telegram. The Telegram group/chat scraper collects participants who have written something in the group or have a service notification about their joining the group. You can parse all the content from the necessary groups, namely: text, images, links to videos, get information about the publication date, author (name, profile link, avatar).

Its logic is different from other scrapers, as it automatically adds requests to iterate through all messages in the group. Because of this, this scraper cannot be used together with any other in one task.

The results can be saved in the format and structure that you need, thanks to the built-in powerful templating engine Template Toolkit which allows you to apply additional logic to the results and output data in various formats, including JSON, SQL and CSV.

Use cases for the Telegram public group scraper

User scraping

Scraping users from public groups in Telegram

Scraping all messages

Scraping all messages from public groups in Telegram

Collected data

  • Link to the message
  • Author's name, link to their profile and avatar
  • Message content, depending on the type it can be:
    • text
    • link to photo
    • link to video
  • Message publication date

Usage options

  • Collecting a list of group members
  • Collecting the content of all messages in the group


  • As requests, you need to specify a link to a public group, for example:


By default, the username, profile link, and message text are output

( Чтобы обходить ограничение на 10 запросов с одного IP нужно дополнительно парсить key= с основной страницы
( Сейчас посмотрю
( <a href="" target="_blank" rel="noopener"></a>

Output options

Output to CSV

Result format:

[% tools.CSVline(query, user_link, message_date, message_text) %]

Example of the result:,,2016-11-05T05:01:09+00:00,"Настройки - Сохранять размер окна",,2016-11-05T05:14:47+00:00,"я запускаю 20 заданий по 300 потоков, с динамическим лимитов в 1200, они выполняются гораздо быстрее за счет того работают все одновременно и нет затыков когда осталось мало запросов(потоков)",,2016-11-05T05:27:06+00:00,"ну прокси в т.ч."

Processing results

A-Parser allows you to process results during parsing

Example of filtering results by word occurrence in a message


You need to select "Filter results" and select $message_text from the drop-down list. Select the type RegEx match. In the field for the regular expression, enter the regular expression with the necessary words \bparser\b|\bGoogle\b|\byandex\b|\bparser\b|\bProxy\b|\bDorks\b

\b - word boundary

| - OR

is - regular expression flag

Download example

How to import an example into A-Parser


Possible settings

ParameterDefault valueDescription
Max empty posts1000This parameter specifies how many consecutive empty (non-existent) messages must be to stop parsing for the current request
Start message number1This parameter specifies from which number to collect messages in the Telegram chat