Telegram Channel Content & Media Scraper

Telegram Channel Content & Media Scraper

by webfinity

Extract Telegram posts with media — perfect for scraping & automation. Collect text, views, reactions, media links (photos, videos, files), channel na...

5,499 runs
212 users
Try This Actor

Opens on Apify.com

About Telegram Channel Content & Media Scraper

Extract Telegram posts with media — perfect for scraping & automation. Collect text, views, reactions, media links (photos, videos, files), channel name, bio, subscriber count, and post metadata. Ideal for creators, analysts, data engineers, and automation workflows.

What does this actor do?

Telegram Channel Content & Media Scraper is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.

Key Features

  • Cloud-based execution - no local setup required
  • Scalable infrastructure for large-scale operations
  • API access for integration with your applications
  • Built-in proxy rotation and anti-blocking measures
  • Scheduled runs and webhooks for automation

How to Use

  1. Click "Try This Actor" to open it on Apify
  2. Create a free Apify account if you don't have one
  3. Configure the input parameters as needed
  4. Run the actor and download your results

Documentation

📦 Telegram Channel Content & Media Scraper Extract channel name, bio, subscriber count, recent posts, views, reactions, and all media with direct download links. This actor scrapes structured content from public Telegram channels using the Telegram API via a pre-authorized session string. --- ### ✅ What This Actor Does - Connects to Telegram automatically (no setup required) - Parses public channels (by username or link) - Retrieves: - Channel name and subscriber count - Latest posts (text, views, reactions, links, media) - Direct media URLs (.jpg, .mp4, .pdf, etc.) - Handles: - Text-only and media-only messages - Full reaction counts and link extraction - Skips: - Ads, empty posts, and outdated messages - Starts from most recent post and works backwards --- ## 🧾 Input You don’t need to enter any credentials — they’re already preconfigured. Just provide three simple fields: | Field | Type | Required | Description | |------------|--------|----------|-----------------------------------------------------------------------------| | channels | string | ✅ | Comma-separated list of channel usernames or links (e.g. @channel1, @channel2) | | limit | number | ❌ | Max number of posts per channel (default: 10) | | daysBack | number | ❌ | Number of days to look back from today (default: 7) | 📌 Example input json { "channels": "@channelname, @channelname, @channelname", "limit": 5, "daysBack": 3 } !!! Important: To avoid Telegram FloodWait limits on `contacts.ResolveUsername`, the actor now processes **up to 10 channels per run**. If you need to scrape more channels, please split them into several runs. --- ## ▶️ How to Run 1. Open the actor in Apify Console. 2. Fill in the input fields: - channels: @channel1, @channel2 - limit: 5 (optional) - daysBack: 3 (optional) 3. Click Save, then Run. 4. Watch live logs and access results from: - Dataset (post content, text, reactions, views) - Key-Value Store (media files with public links) --- ## 📤 Output Each post is saved as a separate record in the default dataset (JSON format). Text-only and media-only messages are handled independently. json { "channel": "@channel_name", "channelLink": "https://t.me/channel_name", "subscribers": 12345, "postId": 101, "postUrl": "https://t.me/channel_name/101", "date": "2025-05-31T17:38:00.000Z", "text": "Example post content", "views": 3456, "reactions": [ { "emoji": "👍", "count": 42 }, { "emoji": "❤️", "count": 18 } ], "likes": 60, "links": ["https://example.com"], "hasMedia": true, "mediaUrls": [ "https://api.apify.com/v2/key-value-stores/<storeId>/records/channel_101_101.jpg?disableRedirect=1" ] } --- ## 🛠 Use Cases - Competitive/viral content monitoring - Telegram market research - Dataset building for AI/ML models - Public media archiving - Social listening and trend analysis - Automation for newsletter or curation projects --- ## 🚀 Deploy Now First run may take 1–2 minutes to initialize dependencies. Subsequent runs are faster and optimized. --- ## Troubleshooting If you see empty results: - Ensure ENV variables API_ID, API_HASH, STRING_SESSION are set and valid. - Try public channels only and set daysRange=3..7. - Increase maxPosts to 20..50. --- ## ⚠️ Telegram Post Grouping Behavior Important note: Telegram’s internal interface sometimes displays a single post as a combination of text + media, but via the Telegram API, these are delivered as two separate messages. As a result, you may see two records in the dataset with: - The same date or very close timestamps - Consecutive postId values - One record containing only text, the other containing only media This is expected behavior. The actor captures exactly what the Telegram API provides without merging or altering message structure. To reconstruct the post visually: - Use matching postId timestamps - Optionally merge adjacent records if they share a context --- ## Update (2025-10-10) ✅ Fixed AUTH_KEY_DUPLICATED by adding a per-session lock (prevents concurrent reuse of the same Telegram auth key). ✅ Improved error messages for session conflicts. ✅ Internal stability tweaks for Telegram requests and media downloads. ## Changelog 2025-12-05 ✅ Added explicit handling and logging for Telegram contacts.ResolveUsername FloodWait errors. ✅ When Telegram returns a FloodWait, the actor now stops processing further channels in that run and adds a telegram_rate_limit record to the dataset with a human-readable explanation. ✅ Limited the number of channels processed per run to 10 to reduce the risk of hitting global FloodWait on the shared Telegram session. ✅ Updated input description to recommend no more than 10 channels per run and documented this behavior in the README. --- ## 🔐 License & Usage This actor is a proprietary paid product. - ❗ It is not open source - 📦 It is licensed for private and commercial use only by subscribers - 🛑 Any unauthorized copying, reselling, or redistribution is strictly prohibited - 🧑‍💻 All activity is logged for abuse prevention and fair use enforcement To get access or report a bug, please contact the creator. --- Made with 💙 for Telegram research & automation.

Common Use Cases

Market Research

Gather competitive intelligence and market data

Lead Generation

Extract contact information for sales outreach

Price Monitoring

Track competitor pricing and product changes

Content Aggregation

Collect and organize content from multiple sources

Ready to Get Started?

Try Telegram Channel Content & Media Scraper now on Apify. Free tier available with no credit card required.

Start Free Trial

Actor Information

Developer
webfinity
Pricing
Paid
Total Runs
5,499
Active Users
212
Apify Platform

Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.

Learn more about Apify

Need Professional Help?

Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.

Find a Specialist

Trusted by millions | Money-back guarantee | 24/7 Support