Telegram Channel Scraper avatar

Telegram Channel Scraper

Pricing

Pay per usage

Go to Apify Store
Telegram Channel Scraper

Telegram Channel Scraper

Scrape Telegram public channels without API key, phone, or login. Extract messages, views, media, forwards, replies, and channel metadata. Supports date filtering, pagination, multiple channels per run. Ideal for OSINT, crypto monitoring, news aggregation, and brand tracking.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

George Kioko

George Kioko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Telegram Channel Scraper - Scrape Telegram Public Channels Without API Key or Phone Number

Scrape Telegram public channels and groups without any API key, phone number, or login. This telegram scraper extracts messages, media, view counts, and channel metadata at scale using Telegram's public web preview. No credentials, no setup — just provide a channel name and start extracting telegram data instantly.

Whether you need telegram OSINT research, telegram monitoring for brand tracking, or simply want to export telegram messages for analysis, this telegram channel scraper handles it all with zero configuration.

Try it on Apify | API Documentation


How the Telegram Scraper Works

flowchart TD
A["Input: Channel URLs / Usernames"] --> B{"Validate & Normalize\nChannel Names"}
B --> C["Navigate to t.me/s/channel\n(Public Web Preview)"]
C --> D["Extract Channel Metadata\n(name, subscribers, avatar)"]
D --> E["Parse Visible Messages\n(text, media, views, links)"]
E --> F{"More Messages\nNeeded?"}
F -- "Yes" --> G["Paginate via ?before=ID\n(Load Older Messages)"]
G --> E
F -- "No (maxMessages reached\nor history exhausted)" --> H{"Date Filter\nApplied?"}
H -- "Yes" --> I["Filter by dateFrom / dateTo"]
H -- "No" --> J["Output Structured JSON\nto Apify Dataset"]
I --> J
style A fill:#0088cc,color:#fff
style J fill:#28a745,color:#fff

Data Flow Architecture

flowchart LR
subgraph INPUT["Input Configuration"]
CH["Channel Names\ndurov, @telegram\nt.me/bitcoin"]
OPT["Options\nmaxMessages, dateFrom\ndateTo, includeMedia"]
end
subgraph SCRAPER["Telegram Message Extractor"]
VAL["Channel\nValidator"]
FETCH["HTTP Fetcher\n(Puppeteer)"]
PARSE["HTML Parser\n& Extractor"]
PAG["Pagination\nController"]
end
subgraph OUTPUT["Output Data"]
META["Channel Metadata\nname, subscribers\navatar, verified"]
MSG["Message Data\ntext, datetime, views\nmedia, links, replies"]
DS["Apify Dataset\nJSON / CSV / Excel"]
end
CH --> VAL
OPT --> VAL
VAL --> FETCH
FETCH --> PARSE
PARSE --> PAG
PAG -->|"?before=ID"| FETCH
PARSE --> META
PARSE --> MSG
META --> DS
MSG --> DS
style INPUT fill:#0088cc,color:#fff
style SCRAPER fill:#f0f0f0,color:#333
style OUTPUT fill:#28a745,color:#fff

Features

  • No API key required — scrape telegram channels without registering a Telegram app or providing credentials
  • No phone number needed — unlike official Telegram API scrapers, this tool needs zero authentication
  • Scrape any public telegram channel — works with channels, groups, and supergroups that have web preview enabled
  • Full message extraction — text (plain + HTML), dates, view counts, media, links, forwards, and replies
  • Telegram OSINT ready — monitor public channels for intelligence research, threat tracking, and investigations
  • Telegram monitoring — schedule recurring runs to track channels over time for brand monitoring or news aggregation
  • Export telegram messages — output as JSON, CSV, or Excel via Apify dataset exports
  • Date range filtering — scrape only messages within a specific time window
  • Smart pagination — automatically loads older messages until your limit is reached
  • Telegram crawler at scale — scrape multiple channels in a single run with configurable message limits
  • Media extraction — photos, videos, documents, stickers, and link previews
  • Proxy support — use Apify Proxy or custom proxies for reliable telegram data extraction

Why This Telegram Scraper?

Most tools that scrape Telegram require you to register an app with Telegram, provide a phone number, and manage API credentials. This telegram channel scraper uses Telegram's public web preview (t.me/s/channelname), which is freely accessible for any public channel. Zero setup, zero credentials, zero risk to your Telegram account.


What It Extracts

Channel Information

  • Channel name and description
  • Subscriber count
  • Avatar / profile image URL
  • Verification status

Per Message

  • Full message text (plain text + HTML)
  • Date and time (ISO format)
  • View count (raw + parsed number)
  • Media attachments (photos, videos, documents, stickers)
  • Link previews with titles and descriptions
  • Forwarded-from information (source channel + URL)
  • Reply context (who replied to whom)
  • All links mentioned in the message
  • Author name (for group chats with multiple posters)

Input Parameters

ParameterTypeDefaultDescription
channelsArray of stringsrequiredChannel usernames or URLs. Accepts: durov, @durov, https://t.me/durov
maxMessagesInteger100Maximum messages to scrape per channel (1-10,000)
includeMediaBooleantrueInclude media URLs (photos, videos, documents)
dateFromString-Only messages from this date (ISO: YYYY-MM-DD)
dateToString-Only messages up to this date (ISO: YYYY-MM-DD)
proxyConfigurationObject-Proxy settings (Apify Proxy recommended)

Channel Input Formats

All of these work when you scrape telegram channels:

  • durov (bare username)
  • @durov (with @ prefix)
  • https://t.me/durov (full URL)
  • https://t.me/s/durov (preview URL)

Example Input

{
"channels": ["durov", "telegram", "https://t.me/bitcoin"],
"maxMessages": 50,
"includeMedia": true,
"dateFrom": "2025-01-01",
"dateTo": "2025-12-31"
}

Example Output

Each message scraped from a telegram public channel produces a structured JSON object:

{
"channel": "durov",
"channelName": "Pavel Durov",
"channelDescription": "Founder of Telegram.",
"subscriberCount": "10.4M",
"channelAvatarUrl": "https://cdn4.telesco.pe/file/...",
"isVerified": true,
"messageId": 456,
"messageUrl": "https://t.me/durov/456",
"text": "We've just released Telegram 11.0 with major new features...",
"textHtml": "<b>We've just released</b> Telegram 11.0...",
"datetime": "2025-03-01T14:30:00+00:00",
"viewCount": "5.3M",
"viewCountParsed": 5300000,
"author": null,
"forwardedFrom": null,
"forwardedFromUrl": null,
"replyTo": null,
"links": ["https://telegram.org/blog/telegram-11"],
"media": [
{
"type": "photo",
"url": "https://cdn4.telesco.pe/file/..."
}
],
"scrapedAt": "2025-03-12T10:00:00.000Z"
}

Use Cases

Telegram OSINT & Intelligence Research

Monitor public Telegram channels used by organizations, governments, or communities. Track announcements, policy changes, and public communications. This telegram scraper is widely used for open-source intelligence gathering from public channels.

Crypto & Finance Monitoring

Track cryptocurrency project channels, trading groups, and DeFi announcements. Monitor token launches, partnership news, and community sentiment across telegram public channels.

News Aggregation

Aggregate content from news channels across languages and regions. Build custom news feeds from primary sources by scraping telegram channels on a schedule.

Content Analysis & NLP

Export telegram messages for sentiment analysis, topic modeling, keyword tracking, or language research. The structured output integrates directly with data pipelines.

Competitive Intelligence

Monitor competitor announcements, product launches, and community engagement metrics via their public telegram channels.

Brand Monitoring & Telegram Monitoring

Track mentions and discussions in industry channels. Monitor view counts and engagement over time with scheduled telegram data extraction runs.

Academic Research

Collect public channel data for social media research, communication studies, or information flow analysis. Export telegram messages in structured formats for reproducible research.


Limitations

  • Public channels only: Private channels and groups cannot be scraped (no login is used)
  • Web preview content: Some media types may show thumbnails instead of full-resolution files
  • Rate limiting: The actor includes delays between requests to avoid being blocked
  • Channel must have web preview enabled: Most public channels do, but some may not

Pricing

This telegram scraper uses Pay Per Event pricing:

  • $0.003 per message scraped
  • Example: Scraping 1,000 messages = $3.00
  • Channel metadata is included free with every run

Tips for Best Results

  1. Use Apify Proxy for reliability, especially when scraping multiple telegram channels
  2. Set date ranges to avoid scraping years of history when you only need recent messages
  3. Start small with maxMessages: 50 to test before scaling up
  4. Disable media (includeMedia: false) if you only need text content — reduces output size

Integration

This telegram channel scraper works with Apify's full ecosystem:

  • Webhooks: Get notified when telegram data extraction completes
  • Integrations: Export telegram messages to Google Sheets, Slack, email, or any webhook
  • API: Call programmatically from any language to scrape telegram channels on demand
  • Scheduling: Run on a schedule for ongoing telegram monitoring
  • MCP Server: Use as an AI agent tool via Apify's MCP integration

FAQ

Do I need a Telegram API key to use this scraper?

No. This telegram scraper works without any API key, phone number, or Telegram account. It accesses publicly available web previews of telegram channels, so there is nothing to configure.

Can I scrape private Telegram channels or groups?

No. This tool can only scrape telegram public channels and groups that have their web preview enabled. Private channels require authentication, which this scraper deliberately avoids.

How many messages can I scrape from a Telegram channel?

You can scrape up to 10,000 messages per channel per run. For channels with extensive history, use the dateFrom and dateTo filters to target specific time periods.

Does this telegram scraper work with Telegram groups?

Yes. Any public Telegram group or supergroup with web preview enabled can be scraped. The scraper handles both channels and groups.

Can I export Telegram messages to CSV or Excel?

Yes. After the telegram data extraction completes, you can export the dataset from Apify in JSON, CSV, Excel, XML, or RSS formats.

How often can I scrape a Telegram channel?

You can schedule recurring runs (hourly, daily, weekly) using Apify's scheduling feature for continuous telegram monitoring. The scraper respects rate limits to avoid disruptions.

Is this telegram scraper suitable for OSINT investigations?

Yes. The telegram OSINT capabilities include full message text extraction, forwarded-from tracking, link extraction, and media collection from public channels — all without revealing your identity.

Can I scrape multiple Telegram channels at once?

Yes. Pass an array of channel usernames or URLs in the channels input parameter. The telegram crawler processes them sequentially.

What data format does the telegram message extractor output?

Each message is output as a structured JSON object containing the message text, HTML, datetime, view count, media URLs, links, forwarded-from info, and reply context.

How does pagination work when scraping Telegram?

The scraper loads the most recent messages first, then automatically paginates backwards through the channel history using Telegram's ?before= parameter until your maxMessages limit is reached.


If you find this telegram scraper useful, check out these related data extraction tools by the same developer:

  • Google Scholar Scraper — Scrape Google Scholar search results, citations, author profiles, and academic papers. Ideal for academic research and bibliometric analysis.
  • Threads Scraper — Scrape Meta Threads posts, profiles, and search results. Extract text, media, engagement metrics, and replies from public Threads profiles.

All tools are available on the Apify Store and can be used via API, scheduling, or as AI agent tools via MCP.