项目地址:tangyoha/telegram_media_downloader: 基于Dineshkarthik的项目, 电报视频下载,电报资源下载,跨平台,支持web查看下载进度 ,支持bot下发指令下载
项目介绍
支持从TG频道或者群组下载音视频文件,并自动上传至指定网盘。实时查看进度,bot指令操作。
软件截图


安装部署
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/blob/master/docker-compose.yaml -O docker-compose.yaml wget https://raw.githubusercontent.com/tangyoha/telegram_media_downloader/blob/master/config.yaml -O config.yaml wget https://raw.githubusercontent.com/tangyoha/telegram_media_downloader/blob/master/data.yaml -O data.yaml # vi config.yaml and docker-compose.yaml vi config.yaml # 第一次需要前台启动 # 输入你的电话号码和密码,然后退出(ctrl + c) docker-compose run --rm telegram_media_downloader # 执行完以上操作后,后面的所有启动都在后台启动 docker-compose up -d # 升级 docker pull tangyoha/telegram_media_downloader:latest cd ~/app docker-compose down docker-compose up -d
配置文件
请自行获取TG的API token和chat ID
api_hash: your_api_hash api_id: your_api_id bot_token: your_bot_token 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移到data.yaml ids_to_retry: [] media_types: - audio - document - photo - video - voice - animation #gif file_formats: audio: - all document: - pdf - epub video: - mp4 save_path: D:\telegram_media_downloader file_path_prefix: - chat_title - media_datetime upload_drive: enable_upload_file: true remote_dir: drive:/telegram before_upload_file_zip: True after_upload_file_delete: True hide_file_name: true file_name_prefix: - message_id - file_name file_name_prefix_split: ' - ' max_download_task: 5 web_host: 127.0.0.1 web_port: 5000 web_login_secret: 123 allowed_user_ids: - 'me' date_format: '%Y_%m' enable_download_txt: false
- api_hash – 你从电报应用程序获得的 api_hash
- api_id – 您从电报应用程序获得的 api_id
- bot_token – 你的机器人凭证
- chat – 多频道
chat_id
– 您要下载媒体的聊天/频道的 ID。你从上述步骤中得到的。download_filter
– 下载过滤器, 查阅 如何使用过滤器last_read_message_id
-如果这是您第一次阅读频道,请将其设置为“0”,或者如果您已经使用此脚本下载媒体,它将有一些数字,这些数字会在脚本成功执行后自动更新。不要改变它。
- chat_id – 您要下载媒体的聊天/频道的 ID。你从上述步骤中得到的。
- 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
- 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界面地址
- web_port – web界面端口
- language – 应用语言,默认为英文(
EN
),可选ZH
(中文),RU
,UA
- web_login_secret – 网页登录密码,如果不配置则访问网页不需要登录
- log_level – 默认日志等级,请参阅
logging._nameToLevel
- forward_limit – 限制每分钟转发次数,默认为33,默认请不要修改该参数
- allowed_user_ids – 允许哪些人使用机器人,默认登录账号可以使用,带@的名称请加单引号
- date_format – 支持自定义配置file_path_prefix中media_datetime的格式,具体格式查看 python-datetime
- enable_download_txt 启用下载txt文件,默认
false
其他说明详见:中文使用文档
发布者:木木,转载请注明出处:https://blog.mmcool.site/7455.html