下载钉钉禁止下载的直播回放

钉钉有些群的直播回放会设置为不可下载,如果我们要下载的话,就需要使用秘密武器-抓包

img

(其实我本来是想要下载个直播回放的,可是一不小心整了个脚本出来…)

Github地址(开源)(Python): https://github.com/lilac-milena/Dingtalk-playback-download


0.更新日志

2023/7/20 版本更新

  • 移除了对 wget 的依赖

  • 增加了对手机客户端抓包的支持

2022/7/2 版本更新

  • 适配linux系统

  • 自动检测下载错误的ts片段并重新下载

  • 优化错误日至的写出

  • 优化逻辑


1.软件及依赖环境

1.1 抓包软件

这里我提供一个Fiddler的安装包,如果想要最新版可以自行去官网下载

安装包: https://raw.githubusercontent.com/lilac-milena/Dingtalk-playback-download/main/exes/FiddlerSetup.exe

安装完Fiddler之后可以在”开始”菜单中找到,我们需要打开Fiddler

点击Fiddler顶栏中的Tools,再点击Options

img

点击HTTPS,并将Decrypt HTTPS traffic打勾

img

之后会提示安装证书,点同意就好

1.2 配置ffmpeg

该脚本使用ffmpeg合并ts,所以需要安装这个玩意

这里就贴个教程,不浪费篇幅了

Windows10安装 ffmpeg 教程 https://zhuanlan.zhihu.com/p/118362010

Linux 安装 ffmpeg 教程 https://cloud.tencent.com/developer/article/1711770


2 抓取及准备

这一步分为两个分支,可以根据个人的要求选择使用什么平台的客户端进行抓包

手机客户端抓包不需要切换钉钉版本,可以直接抓取,比较方便;而 Windows 客户端抓取较稳定,受钉钉 API 改版的影响小。

  • 使用Windows客户端抓包

  • 使用手机客户端抓包

2C.A 更换钉钉版本

最新版本的钉钉做了非常多的修改,导致无法获取完整的m3u8文件,也就造成了回放无法下载

2C.A.1 下载老版本

这个还是比较简单的,我使用的是 5.1.39.10 版本

官方下载链接: https://dtapp-pub.dingtalk.com/dingtalk-desktop/win_installer/Release/DingTalk_v5.1.39.10.exe

2C.A.2 使用老版本

钉钉对老版本的使用做出了限制,但是可以通过修改本地文件的方法跳过,具体教程见:

特别注意:安装老版本后第一时间不要启动钉钉,请打开老版本钉钉所在位置并删除安装目录的 update.exe 文件以防止自动更新

2C.B 设置代理

修改完成后登录的时候要注意一下设置代理连接,这一步是让钉钉与Fiddler建立连接

2C.B.1 点击右上角的小箭头

img

2C.B.2 照如下填写好后点击左下角的”测试”

img

如果成功,则点击保存,如果失败,请检查是否打开了Fiddler

如果操作后聊天乱码,请仔细看一下上面的教程,最后的步骤如果不做就会导致乱码


3.抓包

3.1 抓取

这么多记录,我们需要精确定位到我们需要的,其实很容易,首先,我们先要使用ctrl+a全选,再按delete删除全部记录,这样做是为了防止其他记录干扰我们,接下来,我们随意找一个直播回放,并打开,等待加载完毕后(不是等视频播放完,而是只要出现了视频画面并开始播放就可以关掉了)再关掉,这时看向Fiddler,就会发现Fiddler中出现了很多钉钉的记录

img

然后,我们使用ctrl+f进行搜索,搜索”m3u8”这个关键字

img

就会发现有很多记录被标黄了,我们现在需要从中找到钉钉的记录,大概长这样

img

这条记录前面是一个纸的图标,然后url里面会有”dingtalk.com”这个字串,一般同时符合这两点就是我们要找的数据

3.2 获取下载域名

然后右键这条数据,选择Copy→Just Url

img

现在,我们复制了一条URL,它的格式是这样的:

1
2
3
4
5
格式:
下载域名/直播号_merge.m3u8?app_type=客户端类型&cid=CID&token=Tokey&token2=Tokey2&version=钉钉版本

例子:
https://dtliving-sz.dingtalk.com/live_hp/************_merge.m3u8?app_type=win&auth_key=********************&cid=*******************&token=****************&token2=******************&version=5.1.39-Release.10

请不要访问这个url,因为它的生命周期只有一次,已经被钉钉访问过了,所以我们再去访问会返回403错误

那为什么要复制这个url呢,因为我们需要下载域名,钉钉会每隔一段时间更换一次视频的下载域名(很奇怪,应该是为了防止视频下载),这可能导致你的直播回放的下载域名都是不一样的,所以我们需要这个域名才能下载

下载域名就是如下部分:

img

最后不要忘记加/

3.3 获取m3u8内容

前面说过,抓包获取的m3u8链接不能直接打开,所以我们需要从请求记录中找到m3u8文件的内容

还是找到m3u8的那条记录

按照下面这张图操作:

img

然后我们需要复制右下方那个文本框中的内容

这就是m3u8文件的内容,保存备用


4.下载

现在,就可以去Github下载我的Python脚本了~

脚本地址: https://github.com/lilac-milena/Dingtalk-playback-download/blob/main/ding.py

运行此脚本请自备Python环境

首先,把我们下载的ding.py文件放在一个文件夹中(最好是空文件夹)

然后在路径栏输入cmd,打开cmd

img

4.1 在cmd或终端中输入 python ding.py 运行脚本

如您使用linux运行脚本,请使用 python3 ding.py 运行

img

4.2.根据之前的下载域名选择下载通道

脚本内置了3个下载域名,请根据上面获取到的域名选择,如果都不是,请选择自定义

img

以下内容由2022/7/2更新

4.3.写入m3u8

打开脚本运行目录下的m3u8.txt文件

img

写入m3u8内容

img

写入完毕后,在脚本中输入y并按回车

4.4.选择m3u8来源

不同来源的m3u8文件需要使用不同的格式化方法,如m3u8通过windows端的钉钉抓包而来,就选择Windows端群直播

img

我的m3u8来源于ubuntu客户端,所以我就需要选择3(Linux端群直播)

4.5.下载&合并

下载:

下载ts分段

img

合并:

将ts分段合并为mp4

img


下载,合并完成后,python脚本运行目录会出现 output.mp4 这个文件,这就是下载完成的视频

img

img

文件/文件夹名 作用
tss(文件夹) 存放ts缓存文件(可在下载完成后删除)
tss.txt ts文件列表(可在下载完成后删除)
m3u8.txt m3u8文件,用户需将m3u8文件写入至此文件(可在下载完成后删除)
output.mp4 最终下载的视频文件
err.log 错误日至(如有错误则会生成)

玻璃钢生产厂家玻璃钢造型雕塑加工运城园林景观校园玻璃钢景观雕塑商场美陈ip呈批济南玻璃钢雕塑哪家便宜四川特色商场美陈哪家好商丘玻璃钢名人肖像雕塑哪家好如何让玻璃钢雕塑迅速老化玻璃钢贝壳雕塑座椅深圳关公玻璃钢雕塑定制上蔡玻璃钢雕塑定制弥勒佛玻璃钢雕塑报价银川城市玻璃钢雕塑安装福建玻璃钢花盆供应玻璃钢雕塑设计特别推荐杭州泡沫雕塑玻璃钢商场美陈工作怎么样口碑好的玻璃钢雕塑海洋主题商场美陈韶关卡通玻璃钢雕塑铜仁公园玻璃钢雕塑厂家报价高端玻璃钢雕塑源头好货长春景区玻璃钢雕塑安装河南景观玻璃钢雕塑公司河北玻璃钢卡通雕塑草莓厂家山西创意玻璃钢雕塑联系方式广东商场主题创意商业美陈品牌周口玻璃钢景观雕塑定做武威仿真玻璃钢雕塑江门玻璃钢动物雕塑销售厂商场美陈模式香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化