
Telegram Channel Scraper - Posts, Media & Buttons | No Login
io.github.AnshumanAtrey由 GitHub 帳號 AnshumanAtrey 發布v1.0.4更新於 Oct 29, 2026
Telegram Channel Scraper - No Login, $0.30 per 1K Posts
發布方自己的服務:posts.design
概覽
託管於 Apify 的抓取工具,讓助理不必登入即可取得公開 Telegram 頻道的貼文、媒體連結、按鈕與互動資料。
- 可以做什麼
- 抓取一個或多個公開 Telegram 頻道的貼文,最新優先,包含內文、HTML、時間、瀏覽次數、作者署名與編輯標記
- 取得媒體資訊:Telegram 的照片與影片連結、相簿項目、檔案名稱與大小、音樂標題與演出者
- 擷取貼文下方的內嵌按鈕(文字、連結、列、欄),以及內文連結、連結預覽、轉貼來源與回覆對象
- 讀取表情回應與數量,以及投票的問題、各選項占比與投票人數
- 每列附上頻道名稱、數字 id 與訂閱數,並提供每個頻道的執行摘要,說明被略過的頻道及原因
- 適用情境
- 適合定時監控公開頻道的新聞、公告、優惠或交易訊號,建立供研究或情緒分析使用的貼文資料集,封存頻道歷史,或追蹤品牌、公眾人物或競爭對手的發文。
- 執行需求
- 遠端 MCP 端點 mcp.apify.com,使用 OAuth;需要 Apify API token,透過 Authorization 標頭以 Bearer 形式送出。費用以該 Apify 帳號計價,每 1,000 則貼文 0.30 美元,無啟動費。僅能讀取公開頻道,不需要 Telegram 帳號、手機號碼或 API key。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Telegram Channel Scraper - Posts, Media & Buttons | No Login,將其新增到工作區。
- 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
- 為需要使用其工具的對話啟用該服務。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
交給代理程式安裝
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/io.github.AnshumanAtrey%2Ftelegram-channel-scraper/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。其他 MCP 客戶端
把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。
{
"mcpServers": {
"telegram-channel-scraper-posts-media-but": {
"type": "http",
"url": "https://mcp.apify.com/?tools=anshumanatrey/telegram-channel-scraper"
}
}
}README
Telegram Channel Scraper - Posts, Media & Buttons | No Login
Telegram channel scraper for public channels, with no login, no phone number and no API key. Paste a channel and get every post as a row: text, date, views, reactions, Telegram's own photo and video links, every album item, file names and sizes, the links in the text and the buttons under each post.
Available as an Apify Actor. $0.30 per 1,000 posts, no start fee. One required field.
What does it do?
You type one or more public Telegram channels and press Start. Each post comes back as one dataset row, newest first, with the same 27 columns every time, so it drops straight into a spreadsheet, a database or an AI pipeline.
- The post itself. Plain text with emoji and line breaks kept, the original HTML (bold, links, spoilers), date in UTC, views, the author signature, whether it was edited, and "via @bot" when a bot posted it.
- Media, as Telegram's own links. Photos, videos, GIFs, round videos, voice notes and stickers each come with Telegram's link, plus width, height, duration and thumbnail where Telegram shows them. An album is one row with every item listed, and each item keeps its own post id.
- Files and music. Documents come with their file name and size (
app-release.apk,12.3 MB), music with its title and performer. - Inline buttons. The buttons under a post, with their text, link, row and column. On alert, signal and deal channels this is where the real link lives (the exchange filing, the checkout, the chart).
- Links, previews, forwards and replies. Every link in the text, the preview card Telegram shows for a shared link, who a post was forwarded from, and which post it replies to, even in another channel.
- Reactions and polls. Every reaction with its count, including custom emoji and paid star reactions. Polls with the question, each option's share and the voter count.
- Channel details on every row. Channel name, title, numeric id (it survives a rename) and subscriber count, so each row stands on its own.
How is it different from other Telegram scrapers?
We read the output fields that the 10 most-used Apify Store scrapers reading Telegram's public web preview (the same source as this actor) declare in their dataset schemas and READMEs, on 2026-09-23. How many of the 10 list each field:
Two more things you only notice when something goes wrong:
- Every skipped channel says why. Groups, personal accounts, bots, names that do not exist, private invite links and channels Telegram has blocked all look like an ordinary page to a scraper. This actor recognises each one and writes a plain reason ("@ru_python is a group, not a channel") into the run summary instead of returning an empty result. When Telegram blocks a channel it passes on Telegram's own words, for example "This channel can't be displayed because it violated local laws."
- Posts the web preview hides still get their text. A few posts show only "Please open Telegram to view this post" on the web. The actor fetches the post's own page and recovers the text (up to about 1,000 characters, flagged with
textTruncatedwhen Telegram cut it).
When should I use it?
- Monitoring channels every day or every hour for news, announcements, deals or signals, and feeding the posts into a sheet, a database or an alerting bot.
- Collecting the links behind inline buttons, such as the exchange filing on an earnings-alert channel or the product link on a deals channel.
- Building a dataset of posts for research, sentiment analysis or training, with views and reactions as engagement numbers.
- Tracking what a brand, a public figure or a competitor posts, with the photos and videos alongside.
- Archiving a channel's history back to its first post.
- OSINT and journalism: who forwards whom, which channels quote each other, and a dated record of what a channel posted in case it later edits or deletes it.
What does it cost?
Pay per post: $0.30 per 1,000 posts ($0.0003 each). No start fee, no monthly fee, platform compute included. On paid Apify plans it is less: $0.27 per 1,000 on Scale and $0.24 on Business and above.
An album counts as one post. Apify's free plan includes $5 of monthly credit, which covers about 16,000 posts. Set a spending limit on a run for a hard cap: the run stops cleanly when it is reached and every post you paid for is saved.
How does the price compare with other Telegram scrapers?
The same job with the most-used Telegram scrapers on the Apify Store, worked out from each actor's live pricing on 2026-09-24. Apify free plan, one channel, each actor's default memory (some start fees are charged per GB of memory):
Several of these actors discount their prices on paid Apify plans, and this one does too: $0.27 per 1,000 posts on Scale and $0.24 on Business and above. fetch_cat, automation-lab and truefetch discount on the top tiers as well, so compare at your own plan if you run millions of posts. What each one returns also differs: see the field comparison above.
Which inputs does it take?
When both limits are set, each channel stops at whichever it reaches first. Through the API:
What does the output look like?
One row per post. A real row from an earnings-alert channel, run on Apify on 2026-09-23 (the photo link is shortened here):
A file post from the same run, media part only. Telegram shows the name and size but gives no public download link, so url is empty and unavailable says why:
A poll:
The run summary is the OUTPUT record (Console: the Output tab; API: the default key-value store, key OUTPUT). It lists every channel you typed with its status (ok, partial or skipped), the reason in plain English, the number of posts and the newest and oldest post dates. There is no summary row in the dataset, so CSV and Excel exports hold posts only.
How fast is it?
Measured on Apify at the default 256 MB on 2026-09-23:
- The default input, 200 posts from 2 channels: 6.5 seconds.
- 2,400 posts from 5 channels read at the same time: 64 seconds.
- 2,000 posts from one channel: 142 seconds, about 14 posts a second per channel. Five channels are read at once.
- The parser was checked against 1,165 real posts from 89 pages of more than 60 channels (news, crypto, files, music, polls, stickers, albums): 0 errors, and the text matched a second, independent HTML parser on 1,162 of 1,165 posts (the other 3 differ by one doubled space).
More memory does not make it faster: at 512 MB the same 2,000 posts took 125 seconds instead of 142. The time goes into waiting for Telegram, not into computing.
Common questions
Q: Is this an alternative to Telegram Scraper by tri_angle, Telegram Keyword Search Scraper by lofomachines or Telegram Channel Message by truefetch? For reading public channels, yes, at $0.30 per 1,000 posts with no start fee and no 10-result cap on the free plan (see the price table above). Two things it does not do: keyword search across all of Telegram (lofomachines' actor does that) and the comments under posts (fetch_cat's actor reads them).
Q: Do I need a Telegram account, a phone number or an API key? No. The actor reads Telegram's public web preview of each channel (t.me/s/<channel>), the same page anyone can open in a browser.
Q: Can it read groups, private channels or personal accounts? No. Telegram only shows public channels on the web. Groups, private channels, invite links, bots and personal accounts are skipped, and the run summary says which kind each one was.
Q: Why was a channel skipped? The summary gives the reason. The common ones: the name is a group or a person, the channel does not exist, its owner turned off the web preview, or Telegram blocks it. Some channels are blocked only in some countries; from Apify's servers we saw one channel refused with "This channel can't be displayed because it violated local laws."
Q: Does it download the photos, videos and files? No. It returns Telegram's own links, which keeps the price low and your data yours. Photos are Telegram's web images, up to 800 pixels on the long side. Videos come as the full original file when Telegram shows them on the web, which was about 7 in 10 of the 169 videos we checked; larger ones come with a thumbnail and "unavailable": "too_big". Documents and music have no public link on Telegram's web at all, so you get the name and size, and postUrl opens the post in Telegram.
Q: How long do the media links work? Telegram signs them and they expire, anywhere from minutes to a few hours. Download what you need soon after the run, or run again for fresh links. fileId stays the same across runs for photos and videos, so you can tell whether a file is one you already have.
Q: How do I get a channel's whole history? Set maxPosts to a big number, such as 100000, and leave the date empty. The actor walks back to the first post the web preview shows, at about 14 posts a second per channel.
Q: How do I check a channel every day for new posts? Save the input as an Apify task with postedAfter set to 1 day and schedule it daily. Each run then returns only the last day's posts.
Q: Are comments included? No. The discussion under a post is a separate group, which Telegram does not show in the channel's web preview.
Q: What is unsupported? Telegram's own label for something its web preview cannot show, such as a giveaway, a paid post or a very large video. The post is still returned with everything else Telegram shows, never dropped.
Q: What is isService? Channel events such as "Channel created", "Channel photo updated", a pinned message or a live stream. They are returned as rows flagged isService: true, and cost the same as a post.
Q: Can I call it from code or an AI agent? Yes. Start it through the Apify API or the Apify MCP server with the JSON input above and read the dataset. Every field is always present, empty (null) when a post has no such part.
Limitations
- Public channels only, as Telegram shows them on the web.
- Photos are Telegram's web size (800 pixels on the long side). Files, music and the largest videos have no public link.
- Media links expire after minutes to a few hours.
- No comments and no forward counts, because the web preview does not show them.
- A channel's history is read one page of about 20 posts after another, so one very large channel takes time: about 800 posts a minute.
About the maintainer (priority response within 1-2 hours)
Built and maintained by Anshuman Atrey (@AnshumanAtrey).
- Purple-team security researcher, 5x hackathon winner
- Co-founder of Walrus Securitas (AI cybersecurity SaaS) and The Drone Syndicate (autonomous defence drones)
- Author of the OSINT and data actor portfolio on Apify Store: 16 shipped actors covering email, phone, username, IP and domain, network, secret, social, LinkedIn, domain history, Telegram and Indian fintech data
Custom feature requests shipped within 1-2 hours (priority)
If you need a field, a filter or an output format this actor does not have, the maintainer ships it directly into this actor, typically within 1-2 hours for priority requests during active hours and within 24 hours overnight. This is direct one-to-one service from the maintainer, not a contractor queue.
Fastest contact channels (ranked by response speed):
- LinkedIn DM -> linkedin.com/in/anshumanatrey, typically under 1 hour during active hours
- GitHub issue on this actor's repo
- Apify Console DM to
@anshumanatrey - Email via atrey.dev
Sibling actors by the same maintainer
Documentation
- Apify Store: https://apify.com/anshumanatrey/telegram-channel-scraper
- GitHub repo: https://github.com/AnshumanAtrey/telegram-channel-scraper
- Changelog: CHANGELOG.md
- Issues / feature requests: open an issue on the GitHub repo or DM LinkedIn for the fastest response
- License: MIT
Last updated
2026-09-23 (version 1.0)
來源:README.md,提交 ac4abbb
工具
0版本歷史
2- v1.0.4最新Oct 29, 2026
- v1.0.3Sep 24, 2026
評分
已滿足適用檢查項的 85%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通必需25 分
- 已宣告認證方式必需10 分
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
其他 Posts 整合
posts.design
design.posts官方發布者
posts.design 提供的遠端 MCP 端點,讓助理為即將發布的貼文尋找設計參考與影片拆解。

Weibo Hot Search (微博热搜): Trending Topics & Posts
由 GitHub 帳號 serenido 發布
託管於 Apify 的遠端 MCP 伺服器,讓助理取得微博熱搜即時榜單、熱度變化以及可選的熱門貼文。

Weibo: Posts, Hot Searches, Comments & Creators (微博)
由 GitHub 帳號 serenido 發布
遠端 Apify MCP 伺服器,讓助理不必登入即可蒐集微博熱搜、關鍵字貼文、留言與創作者資料,並輸出結構化 JSON。

Pay Transparency Rules for Job Posts
由 GitHub 帳號 Nero-Engine 發布
讓助理查詢美國、加拿大與歐盟的薪資透明法規,並在刊登前檢查職缺是否合規。

LinkedIn Posts
由 GitHub 帳號 saulius876-lgtm 發布
讓助理從連結或公司頁面取得 LinkedIn 貼文,包括內文、作者、日期、互動、熱門留言和媒體。