Telegram Scraper — Channel Messages & Media avatar

Telegram Scraper — Channel Messages & Media

Pricing

$4.99/month + usage

Go to Apify Store
Telegram Scraper — Channel Messages & Media

Telegram Scraper — Channel Messages & Media

Scrape Telegram channel messages and metadata. Extract message text, media, view counts, timestamps, and sender info. Monitor public Telegram channels for market intelligence. Export to JSON, CSV, or Excel.

Pricing

$4.99/month + usage

Rating

0.0

(0)

Developer

Web Data Labs

Web Data Labs

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

1

Monthly active users

2 days ago

Last modified

Share

Telegram Channel Scraper — Messages, Media & Analytics

Scrape public Telegram channels to extract messages, media metadata, view counts, and forwarding statistics. No Telegram API key or account login required. Works with any public channel via its t.me URL.

Try it free on Apify — 5,000 results/month included in Apify's free tier.


Key Features

  • No authentication needed — scrapes public Telegram web previews, no API key or phone number required
  • Full message extraction — text, timestamps, view counts, and forward counts
  • Media metadata — detect photos, videos, and documents with direct URLs when available
  • Date range filtering — scrape messages from a specific time window
  • High volume — extract up to 10,000 messages per run
  • Lightweight HTTP scraping — no browser overhead, fast and cost-efficient
  • Pay-per-result pricing — only pay for messages actually extracted

Use Cases

  1. Media Monitoring & PR Intelligence — Track breaking news channels and industry-specific Telegram groups. Monitor message volume and view counts to detect emerging stories before they hit mainstream media.

  2. Crypto & Finance Signal Tracking — Scrape crypto trading channels, market analysis groups, and financial news channels. Analyze posting frequency, view engagement, and forwarding patterns for signal quality assessment.

  3. Competitive Intelligence — Monitor competitor announcement channels for product launches, pricing changes, hiring signals, and strategic shifts. Track view counts to gauge audience engagement.

  4. Brand & Reputation Monitoring — Track mentions of your brand across public Telegram channels. Identify influential channels discussing your products and measure message reach through view/forward counts.

  5. Content Research & Curation — Aggregate content from multiple Telegram channels for newsletters, research reports, or content curation platforms. Filter by date to get only recent, relevant content.

  6. Academic & Social Research — Study information dissemination patterns, channel growth dynamics, and content virality in Telegram's ecosystem. Analyze forwarding networks and view count distributions.

  7. OSINT & Investigations — Gather publicly available information from Telegram channels for open-source intelligence research, journalism, or due diligence investigations.

  8. Audience Research — Analyze what content resonates with specific audiences by tracking view counts, forward rates, and posting patterns across relevant channels.


Input Parameters

ParameterTypeRequiredDefaultDescription
channelUsernamestringYestelegramChannel username without @. Also accepts full t.me/ URLs. Example: durov, telegram, bbcnews
maxMessagesintegerNo5Maximum messages to scrape (1–10,000)
dateFromstringNoOnly include messages after this date (ISO format, e.g., 2026-01-01)
dateTostringNoOnly include messages before this date (ISO format)
includeMediabooleanNofalseExtract media metadata (photo/video/document flags and direct URLs)

Input Examples

Basic channel scrape

{
"channelUsername": "durov",
"maxMessages": 100
}

With media metadata and date filter

{
"channelUsername": "telegram",
"maxMessages": 500,
"includeMedia": true,
"dateFrom": "2026-01-01",
"dateTo": "2026-03-31"
}

Using full t.me URL

{
"channelUsername": "https://t.me/bbcnews",
"maxMessages": 200,
"includeMedia": true
}

Sample Output

{
"message_id": 1247,
"channel": "durov",
"date": "2026-03-28T10:15:00+00:00",
"text": "Today we launched the new privacy features that let you control exactly who can see your online status...",
"views": 182400,
"forwards": 3210,
"url": "https://t.me/durov/1247",
"has_photo": true,
"has_video": false,
"has_document": false,
"photo_url": "https://cdn4.telegram-cdn.org/file/abc123.jpg"
}

Integration Examples

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("cryptosignals/telegram-channel-scraper").call(run_input={
"channelUsername": "durov",
"maxMessages": 200,
"includeMedia": True,
"dateFrom": "2026-01-01",
})
for msg in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"[{msg['date']}] {msg['text'][:100]}...")
print(f" Views: {msg['views']:,} | Forwards: {msg['forwards']:,}")

Node.js

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
const run = await client.actor("cryptosignals/telegram-channel-scraper").call({
channelUsername: "telegram",
maxMessages: 100,
includeMedia: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((msg) => {
console.log(`[${msg.date}] ${msg.text?.substring(0, 100)}...`);
console.log(` Views: ${msg.views} | Forwards: ${msg.forwards}`);
});

Export to CSV via API

curl "https://api.apify.com/v2/datasets/DATASET_ID/items?format=csv&token=YOUR_TOKEN" \
-o telegram_messages.csv

Pricing

This actor uses Apify's pay-per-result (PPE) pricing:

  • Free tier: 5,000 results/month included with every Apify account
  • Paid usage: billed per result at Apify's standard PPE rate
  • No hidden fees — you only pay for messages actually extracted
  • Ultra-low cost — HTTP-only scraping with no browser overhead

Sign up for free and start scraping immediately.


Frequently Asked Questions

Q: Do I need a Telegram account? A: No. This actor scrapes public Telegram channel web previews accessible at t.me. No phone number, API key, or Telegram account required.

Q: Can I scrape private channels or groups? A: No. Only public channels with a t.me URL are supported. Private channels and groups require authentication which this actor does not perform.

Q: How many messages can I scrape per run? A: Up to 10,000 messages per run. Use date filters (dateFrom/dateTo) to target specific time periods and manage run costs.

Q: Does this extract images and videos? A: It extracts media metadata — flags indicating whether a message contains a photo, video, or document, plus direct URLs for photos when available. It does not download the actual media files.

Q: Can I scrape multiple channels? A: Each run scrapes one channel. To scrape multiple channels, run the actor multiple times or use Apify's task scheduling to automate parallel runs.

Q: What format is the date output? A: Dates are in ISO 8601 format (e.g., 2026-03-28T10:15:00+00:00) for easy parsing in any programming language.

Q: How real-time is the data? A: Data is scraped live on each run. For near-real-time monitoring, schedule the actor to run every 15-60 minutes using Apify's built-in scheduler.

Q: Can I export results to Google Sheets or a database? A: Yes. Apify supports exporting results as JSON, CSV, XML, or Excel. You can also set up webhooks or integrations to push data directly to Google Sheets, BigQuery, S3, or any database.