- 支持实时进度显示的 Telegram 用户机器人,无文件大小限制,专为大文件传输优化
- 仅在dibian13和dibian12系统测试过运行完美
- 使用方法也很简单配置启动完,直接转发视频给TG机器人就行
- 做这个脚本的初衷就是保存Telegram上的视频到本地服务器,懂得都懂
- 这个脚本会持续更新,目前这个蛮稳定的,可以直接在对话框指定和创建目录
- 有兴趣的可以赞助,万分感谢!!!- 📊 实时进度显示 - 动态进度条,直观显示下载状态
- 🚫 无文件大小限制 - 支持任意大小的文件下载
- 💾 本地存储 - 文件直接保存到服务器本地
- 🔄 自动重试机制 - 网络中断自动恢复下载
- 🎯 智能文件名识别 - 自动获取原始文件名
- 📱 多格式支持 - 支持文档、视频等各种文件类型
⬇️ 存储端支持 ├── 本地磁盘(支持) ├── WebDAV(暂不支持) ├── Alist(暂不支持)
📥 开始下载大文件
📁 文件名: large_video.mp4
📊 文件大小: 2.15 GB
⏳ 进度: [█████░░░░░] 45.2%
⬇️ 已下载: 987.3 MB / 2.15 GB
- Python 3.8+
- Telegram API 账号 (获取方法)
- 下载脚本
sudo mkdir -p /opt/tg_down && cd /opt/tg_down
wget https://raw.githubusercontent.com/shanchuanbei/tg_down/refs/heads/main/tg.py -O tg.py- 安装依赖
apt update && apt install -y python3-pip
pip3 install --break-system-packages "python-telegram-bot==13.15"
pip3 install --break-system-packages telethon
pip3 install --break-system-packages aiofiles aiohttp- 配置参数
# 在脚本中配置以下参数
# 脚本存放地址默认在这个目录下/opt/tg_down
# 用这个命令改写脚本 nano /opt/tg_down/tg.py
# 用这个命令改写脚本 nano /opt/tg_down/tg.py
# 用这个命令改写脚本 nano /opt/tg_down/tg.py
API_ID = 1234567 # 你的 API ID
API_HASH = "your_api_hash_here" # 你的 API Hash
DOWNLOAD_DIR = "/path/to/downloads" # 下载目录- 运行机器人 第一次运行需要前台启动 会让你输入机器人API列如:8554455525:esdfhdsajkdqwijhfisajfsiuhufuew
python3 tg.py- 用systemd后台启动 前台启动完成后用ctrl+C结束命令然后一键配置systemd
sudo cat > /etc/systemd/system/tgdown.service << EOF
[Unit]
Description=tgdown - 大文件下载器
After=network.target
Wants=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/tg_down
ExecStart=/usr/bin/python3 /opt/tg_down/tg.py
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
Environment=PYTHONUNBUFFERED=1
LimitNOFILE=65536
TimeoutStopSec=30
[Install]
WantedBy=multi-user.target
EOF启动
sudo systemctl start tgdown停止
sudo systemctl stop tgdown重启
sudo systemctl restart tgdown开机自启
sudo systemctl enable tgdown检查服务状态
sudo systemctl status tgdown查看运行日志
sudo journalctl -u tgdown -f- 访问 my.telegram.org
- 登录你的 Telegram 账号
- 进入 "API Development Tools"
- 创建新应用,获取
API_ID和API_HASH
/start- 启动机器人,查看功能介绍/status- 查看下载目录状态和统计信息
直接向机器人发送任意文件或视频,机器人会自动开始下载并显示实时进度。
downloads/
├── video_12345.mp4
├── document_67890.pdf
└── large_file.zip
修改 update_interval 值来控制进度更新频率:
update_interval = 2 # 每2%更新一次(更频繁)
update_interval = 10 # 每10%更新一次(更节省资源)用户发送文件 → 机器人回复进度消息 → 实时更新进度
📥 **下载进行中**
📁 文件名: `large_file.zip`
📊 文件大小: 1.5 GB
⏳ 进度: [██████░░░░] 60.0%
⬇️ 已下载: 900.0 MB / 1.5 GB
✅ **大文件下载完成!** 🎉
📁 文件名: `large_file.zip`
📊 文件大小: 1.5 GB
📍 保存路径: `/downloads/large_file.zip`
⏰ 下载时间: 1630456789.123
🎬 享受您的大文件!
Q: 机器人无法启动
A: 检查 API_ID 和 API_HASH 是否正确,确保网络连接正常
Q: 下载进度不更新
A: 检查文件权限,确保下载目录可写
Q: 大文件下载中断
A: 机器人支持断点续传,重新发送文件即可继续下载
欢迎提交 Issue 和 Pull Request!
- Fork 本仓库
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情
- Telethon - 优秀的 Telegram 客户端库
- Telegram API - 提供强大的 bot 平台
⚠️ 重要提醒:请遵守 Telegram 使用条款和当地法律法规,仅下载你有权访问的文件。
💡 性能建议:对于超大文件(10GB+),建议使用稳定的网络环境,并确保服务器有足够的磁盘空间。
本项目仅供学习和研究使用,请遵守相关法律法规,不得用于商业用途。使用者需自行承担使用风险!
如果这个项目对您有帮助,请献上一个⭐!
如果这个项目对您有帮助,请考虑赞助支持后续开发!
微信赞助
|
支付宝赞助
|
感谢您的支持!❤️

