使用 Telegram Media Downloader 实现Telegram中文件高速下载
Telegram Media Downloader 是一款基于 Dineshkarthik 的项目, 支持电报视频/资源下载,支持web查看下载进度 ,支持bot下发指令下载,支持下载已经加入的私有群但是限制下载的资源,使用远高于TG客户端限制的速度下载,支持使用Rclone上传到云盘
Telegram Media Downloader 部署方法:
第一步:更新源
apt update -y && apt upgrade -y
yum update -y && yum upgrade -y
第二步:安装并配置Docker
安装Docker:
curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh ./get-docker.sh
启动Docker:
sudo systemctl start docker
设置Docker在开机时自动启动:
sudo systemctl enable docker
第二步:拉取 Docker 容器
docker pull tangyoha/telegram_media_downloader:latest
mkdir -p ~/app && mkdir -p ~/app/log/ && cd ~/app
wget https://raw.githubusercontent.com/tangyoha/telegram_media_downloader/master/docker-compose.yaml -O docker-compose.yaml
wget https://raw.githubusercontent.com/tangyoha/telegram_media_downloader/master/config.yaml -O config.yaml
wget https://raw.githubusercontent.com/tangyoha/telegram_media_downloader/master/data.yaml -O data.yaml
第三步:配置 Docker 容器
nano config.yaml
修改如下内容:
- api_hash – 你从电报应用程序获得的 api_hash( 在https://my.telegram.org/apps 进行获取)
- api_id – 您从电报应用程序获得的 api_id( 在https://my.telegram.org/apps 进行获取)
- bot_token – 你的机器人凭证( 在 https://t.me/BotFather 进行获取)(可选,填入后可以转发信息给机器人下载)
- chat – 多频道
chat_id
– 您要下载媒体的聊天/频道的 ID。(在 https://t.me/username_to_id_bot 进行获取)download_filter
– 下载过滤器, 查阅 如何使用过滤器last_read_message_id
-如果这是您第一次阅读频道,请将其设置为“0”,或者如果您已经使用此脚本下载媒体,它将有一些数字,这些数字会在脚本成功执行后自动更新。不要改变它。
- last_read_message_id – 如果这是您第一次阅读频道,请将其设置为“0”,或者如果您已经使用此脚本下载媒体,它将有一些数字,这些数字会在脚本成功执行后自动更新。不要改变它。
例如:
chat:
- chat_id: telegram_chat_id
last_read_message_id: 0
download_filter: message_date >= 2022-12-01 00:00:00 and message_date <= 2023-01-17 00:00:00
- chat_id: telegram_chat_id_2
last_read_message_id: 0
- ids_to_retry –
保持原样。
下载器脚本使用它来跟踪所有跳过的下载,以便在下次执行脚本时可以下载它。 - media_types – 要下载的媒体类型,您可以更新要下载的媒体类型,它可以是一种或任何可用类型。
- file_formats – 为支持的媒体类型(“音频”、“文档”和“视频”)下载的文件类型。默认格式为“all”,下载所有文件。
- save_path – 你想存储下载文件的根目录
- file_path_prefix – 存储文件子文件夹,列表的顺序不定,可以随机组合
chat_title
– 聊天频道或者群组标题, 如果找不到标题则为配置文件中的chat_id
media_datetime
– 资源的发布时间media_type
– 资源类型,类型查阅media_types
- disable_syslog – 您可以选择要禁用的日志类型,请参阅
logging._nameToLevel
- upload_drive – 您可以将文件上传到云盘
enable_upload_file
– [必填]启用上传文件,默认为false
remote_dir
– [必填]你上传的地方upload_adapter
– [必填]上传文件适配器,可以为rclone
,aligo
。如果为rclone
,则支持rclone所有支持上传的服务器,如果为aligo,则支持上传阿里云盘rclone_path
,如果配置upload_adapter
为rclone
则为必填,rclone
的可执行目录,查阅 如何使用rclonebefore_upload_file_zip
– 上传前压缩文件,默认为false
after_upload_file_delete
– 上传成功后删除文件,默认为false
- file_name_prefix – 自定义文件名称,使用和 file_path_prefix 一样
message_id
– 消息idfile_name
– 文件名称(可能为空)caption
– 消息的标题(可能为空)
- file_name_prefix_split – 自定义文件名称分割符号,默认为
-
- max_download_task – 最大任务下载任务个数,默认为5个。
- hide_file_name – 是否隐藏web界面文件名称,默认
false
- web_host – web界面地址(如 127.0.0.1)
- web_port – web界面端口(如 5000)
- language – 应用语言,默认为英文(
EN
),可选ZH
(中文),RU
,UA
- web_login_secret – 网页登录密码,如果不配置则访问网页不需要登录
第四步:启动Docker容器
docker-compose run --rm telegram_media_downloader
输入你的电话号码和密码
格式举例:+8612345678900
Telegram Media Downloader 相关地址:
GitHub地址:https://github.com/tangyoha/telegram_media_downloader
Telegram 媒体下载器 Tampermonkey 脚本
用于在 Telegram Web 应用程序上下载图像、GIF 和视频,甚至可以从限制下载和保存内容的渠道下载。Tampermonkey 脚本允许您从 Telegram Web 应用程序下载图像、GIF 和视频,即使频道禁用下载并限制保存内容。
如何使用
该脚本仅适用于 Telegram Web 应用程序。
对于允许保存内容的频道和聊天,此脚本将不起作用。请使用 telegram webapp 提供的官方下载按钮。
对于禁用下载和限制保存内容的频道和聊天,此脚本将为图像、GIF 和视频添加重新下载按钮。
该脚本将在后台静默下载文件,只有在完成下载整个文件后,浏览器才会将文件保存在本地。因此,如果您正在下载一个大视频,在浏览器开始下载之前很长一段时间您看不到任何事情发生,这是正常的。要检查下载进度,请参阅以下说明。
支持的 Web 应用程序版本
Telegram Web 应用程序有 2 个不同版本:
- https://webk.telegram.org / https://web.telegram.org/k/
- https://webz.telegram.org / https://web.telegram.org/a/
该脚本应该适用于两个版本的 webapp。如果您使用另一个不同版本的 webapp 并发现此脚本不起作用,请向我们的GitHub 存储库提出问题。
检查下载进度
如果您想查看当前下载进度,可以打开浏览器 DevTools -> console并查看文本输出。