Skip to content

tgdl - Telegram Media Downloader

High-performance CLI tool for downloading media from Telegram PyPI version Python versions License: MIT


Overview

tgdl is a powerful command-line tool designed to download media files from Telegram channels, groups, and bot chats with advanced filtering and parallel download capabilities.

✨ Key Features

  • 🚀 Fast Parallel Downloads - Download multiple files simultaneously (configurable concurrency)
  • 🎯 Advanced Filtering - Filter by media type, file size, and message ID ranges
  • 📊 Smart Resume - Automatically skip already downloaded files
  • 🔒 Secure - Encrypted credential storage with industry-standard encryption
  • 📝 Progress Tracking - Visual progress bars and download statistics
  • 🎨 User-Friendly - Intuitive CLI with helpful tips and error messages
  • 💾 Efficient - Track downloads by message ID to prevent duplicates

🎯 Use Cases

  • Backup Telegram channels - Archive important media from channels
  • Media collection - Download photos, videos, documents from groups
  • Bot downloads - Retrieve files shared by bots
  • Selective downloading - Download specific file types or size ranges
  • Range downloads - Download media from specific message ID ranges

🚦 Quick Example

# Install
pip install tgdl

# Login
tgdl login

# List your channels
tgdl channels

# Download all media from a channel
tgdl download -c 1234567890

# Download only videos with size limit
tgdl download -c 1234567890 -v --max-size 100MB

# Download messages from ID 20 to 100
tgdl download -c 1234567890 --min-id 20 --max-id 100

📖 Documentation Structure

  • Installation


    Get tgdl installed on your system

    Install now

  • Quick Start


    Start downloading in 5 minutes

    Get started

  • User Guide


    Learn all features and options

    Read guide

  • Troubleshooting


    Common issues and solutions

    Get help

⚡ Why tgdl?

Feature tgdl Manual Download
Parallel Downloads ✅ Up to 20+ concurrent ❌ One at a time
Resume Support ✅ Automatic ❌ Manual
Media Filtering ✅ Type, size, range ❌ None
Progress Tracking ✅ Real-time ❌ None
Duplicate Prevention ✅ Message ID tracking ❌ Manual checking
Automation ✅ CLI scriptable ❌ Manual

📋 Requirements

  • Python 3.7 or higher
  • Telegram account
  • API credentials from my.telegram.org

🎬 Next Steps

Ready to get started? Follow these steps:

  1. Install tgdl
  2. Get API credentials
  3. Follow the quick start guide
  4. Explore advanced features

💡 Support

📄 License

tgdl is released under the MIT License.


Made with ❤️ by kavidu-dilhara