Scrape posts and messages from any public Telegram channel: text, dates, views, reactions, photos, videos, links, hashtags, and channel profiles with subscriber counts. Search by keyword, pick a date range, or monitor channels on a schedule. No Telegram account or API key needed.
Keyword search goes much deeper. Search now reads the channel itself, so you get as many matching posts as you ask for (it used to stop at about 22 per channel). It searches 20,000 posts per channel, counting back from today or from Posted before, or your whole date range when you set Posted after. Search together with Posted before now works too. Posts must contain every word you enter, in any order and letter case.
Search words now match exactly as you type them, where the old search also caught other forms of a word. For words that change their ending, enter the stem: Украин matches Украина, Украины, and Украине, and invest matches investor and investing.
videos is now a list of objects with url, thumbnail, and duration (seconds), replacing the plain list of links. Portrait videos are no longer listed twice, and large videos that play only in the Telegram app now appear with their preview and length (url is empty for those).
New fields:links (every web link in the text, including links behind words), hashtags, mentions, edited, signature, replyToUrl, and linkPreview.image.
Relative dates.Posted after and Posted before accept periods like 7 days or 1 month, counted back from the moment the run starts, so a daily run set to 1 day gets every post exactly once.
Service messages ("… pinned a video") and posts Telegram shows only in its app are skipped and not charged.
Usernames are matched without regard to letter case, so Durov and durov are scraped once. tg://resolve?domain=… links work. Invite links are skipped with a note instead of becoming a charged "not found" row.
A channel that can't be loaded for a moment is retried, and if it still fails it is skipped without charge while the other channels keep going.
Every run ends with a summary, such as "Got 100 posts from 1 channel."
Faster runs. Several channels are read at once, so runs with many channels finish 2-3x faster, and each channel needs fewer round trips. Posts from different channels can now appear interleaved in the dataset; every row still carries its channel.
New Engagement and Media and links tables in the Output tab.