如何下载钉钉中不允许下载的直播视屏回放
前言
最近在钉钉上直播学习,然后直播结束之后,钉钉每次直播都会生成直播回放,以供后期观看,但是由于一些商业原因,导致管理员设置直播回放的下载权限为不可下载,而且直播群 也有时间期限。所以我就有了想把钉钉的直播回放通过技术手段下载下来的想法。经过几天的研究 对比了很多方案,找到了一个成功的案例供大家思考。
涉及知识:HTTP2协议,http2协议是http1.0的升级版,它主要升级了访问性能以及支持服务器端推送。他们都默认开启TLS/SSL,所以报文都是加密的。所以抓取到它的流量就需要解密
系统版本与相应技术
系统::macOS bigsur11.0.1相应技术:Fiddler Everywhere(mac版本的Fiddler)+ ffmpeg
软件的下载地址
Fiddler Everwhereffmpeg 下载,可以通过mac里面的包管理工具下载,homebrew(homebrew的使用另请百度),命令如下
操作步骤
软件下载完成之后,我们就打开Fiddler Everywhere,界面就长这样子
由于HTTP2的报文是加密的,所以我们就需要配置解密的操作。点击Fiddler的菜单栏,也就是我下图所示
然后安装证书,然后把http2证书解密和忽略证书报错的选项勾选上
配置完成之后,我们就可以开始了
开始之前,我们先清屏一下,然后再点击钉钉的视屏回放。
点开钉钉的直播回放之后。然后观察这边抓取的流量包,就会发现多了很多经过解密的http2的请求包(fiddler解密之后的保文都变成http1.1的保文了,这点可能与fiddler的机制有关)
接下来我们就要赛选这些保文中,URL中有带有.m3u8?
字样的请求。由于我们需要抓取的是视屏。而在这些加密的视屏请求中,有一个总的请求,URL后缀包含.m3u8?
。然后会有很多后缀为ts的子请求。这个时候我们就需要抓取URL带有.m3u8?
的总请求就行
筛选操作如下 在URL字段的最后有个3个点的菜单属性,这个是筛选列表的菜单,我们点击它,然后输入筛选的 .m3u8?
点击Filter即可
然后就会筛选出这么一条数据来。
接下来对着URL的数据右键COPY它的URL即可
到现在,我们已经成功拿到它视屏的m3u8后缀的总地址了。接下来我们就可以通过ffmpeg软件下载了,操作如下
命令有点长,因为视频的url地址比较长,不过可以给大家一个简写的命令格式
然后成功之后的终端是这样的
到现在视频就下载你当前所在的目录了
总结
通过这篇实践,如愿下载下了钉钉的视屏回放,不过,还是支持大家支持正版。通过这次实践也让我网络方面的功底提升不少。由于win版本的钉钉数据与mac版本的有所差异,所以还在整理中,大家耐心等候大家有什么问题可以在我文章下面留言,也可以关注我公众号私信我