唯心笔录

  • 随笔
  • 笔记
  • 口水
  • 备忘

Amazon bt chanify CodeServer docker fastadmin frp JS Linux MySql NAS openwrt photoprism photosync PHP Portainer Shortener SMB vfs wechat 亚马逊 内网穿透 升级 备份 宝塔 引号 微信 微擎 换行 文本分类 正则 照片 电报 短网址 缓存 群晖 迅雷

近期文章

  • 分本分类模型训练实战教程
  • 电报邀请链接机制
  • 如何批量下载Telegram群组视频图片等媒体
  • Navicat提示2002 10060无法连远程数据库
  • 群晖通过SSH工具命令行方式升级docker应用memos

如何批量下载Telegram群组视频图片等媒体

  • jeechou
  • 2023-08-26
  • 1
  1. 下载python https://www.python.org/

  2. 安装python的时候,切记勾选 Add python xx to PATH 和 点击 Disable path length limit

file

file

  1. 打开CMD输入 python 验证是否安装成功

  2. 下载脚本 telegram media downloader 点击Sourse.zip 进行下载最新版本

  3. 将下载的脚本解压到非中文目录

  4. 前往 https://my.telegram.org/apps 注册并获得id和hash,这一步很多人都卡住了,网上搜索了很多办法,比如切换魔法地区,用手机尝试,用浏览器的隐私模式(因为浏览器屏蔽广告等插件影响),APP名称和简称不要有空格且是字母数字格式,最终在香港的VPS上多点了一会儿才成功。

  5. 获取聊天ID

  • 使用网址获取(不推荐)
    打开 https://web.telegram.org/?legacy=1#/im
    现在转到聊天/频道,您将看到类似的 URL
    https://web.telegram.org/?legacy=1#/im?p=u853521067_2449618633394 这 853521067 是聊天ID。
    https://web.telegram.org/?legacy=1#/im?p=@somename 这 somename 是聊天ID。
    https://web.telegram.org/?legacy=1#/im?p=s1301254321_6925449697188775560 这里取 1301254321 并添加-100到 id => 的开头-1001301254321。
    https://web.telegram.org/?legacy=1#/im?p=c1301254321_6925449697188775560 这里取 1301254321 并添加-100到 id => 的开头-1001301254321。

  • 使用机器人
    使用 @username_to_id_bot 获取chat_id(将链接用telegram打开即可)
    几乎所有电报用户:将用户名发送给机器人或将他们的消息转发给机器人
    任何聊天:发送聊天用户名或复制并将其加入聊天链接发送到机器人
    公共或私人频道:与聊天相同,只需复制并发送到机器人
    总结:只需要转发需要下载的频道的任何一个消息给机器人即可

file

将id:后面的内容复制出来(减号也是需要复制出来的)

  1. 配置telegram media downloader

修改解压好的目录中的config.yaml。内容如下

api_hash: 你的api_hash
api_id: 你的api_id
chat_id: telegram_聊天_id
last_read_message_id: 0
ids_to_retry: []
media_types:
- audio
- photo
- video
- document
- voice
- video_note
file_formats:
  audio:
  - all
  document:
  - all
  video:
  - all
  • api_hash - 之前步骤网页获得的 api_hash
  • api_id - 之前步骤网页获得的 api_id
  • chat_id - 您要下载媒体的聊天/频道的 ID。您可以从上述步骤中获得。
  • last_read_message_id - 如果这是您第一次阅读数字频道,或者自然而然,0或者已经在使用此脚本下载媒体,随后可以自动更改一些在成功播放的内容。不要它。
  • ids_to_retry -Leave it as it is.下载器脚本使用它来跟踪所有跳过的下载,以便可以在下次执行脚本时下载。
  • media_types - 要下载的媒体类型
  • file_formats - 为支持的媒体类型下载的文件类型,audio包括document和video. 默认格式是all,下载所有文件。

  • 举个栗子我想要下载视频和照片,我可以如下配置
  • (注意:后面都要有空格)
api_hash: 022bfece4be22fbd8af27a98b2a37b
api_id: 129323
chat_id: -1001766584706
last_read_message_id: 0
ids_to_retry: []
media_types:
- audio
- video
file_formats:
  audio:
  - all
  video:
  - all
  1. 配置代理(如需)
    如果需要配置代理访问,则需要向config.yaml加入

    proxy:
    scheme: socks5
    hostname: 代理ip
    port: 代理端口
    username: 代理用户名
    password: 代理密码

如果您的代理不需要授权,您可以省略用户名和密码。然后代理将自动启用。

举个栗子,如果我的使用clash默认参数

proxy:
  scheme: socks5
  hostname: 127.0.0.1
  port: 7890
  username: 
  password: 

和之前的拼接一下

api_hash: 022bfece4be22fbda68f27a98b2a37b
api_id: 1299423
chat_id: -1001766584706
last_read_message_id: 0
ids_to_retry: []
media_types:
- audio
- video
file_formats:
  audio:
  - all
  video:
  - all
proxy:
  scheme: socks5
  hostname: 127.0.0.1
  port: 7890
  username: 
  password: 
  1. 登录Telegram
    在解压好的目录内,按住shift键同时右键,选择在cmd打开 或者终端打开 或者powershell打开(三种方式都可以)。

然后输入,并回车,等待依赖安装完成

pip3 install -r requirements.txt

file

  • 安装依赖的时候,我遇到了报错,经过搜索解决办法如下

下载 Microsoft C++ 生成工具 后,安装Visual Studio 生产工具

file

然后再执行 上面的依赖安装代码即可成功

继续,输入

python media_downloader.py

file

当看到Enter phone number or bot token时输入你的手机号,如果是大陆手机号请在前面加入+86,输入完成后回车,然后会问is correct?输入y并回车

然后The confirmation code has been sent via Telegram app这里需要去telegram看一下验证码是多少,输入进来并回车,即可开始下载

© 2025 唯心笔录
Theme by Wing
蜀ICP备2020027593号-1
  • {{ item.name }}
  • {{ item.name }}