猫抓(Cat Catch)—— 资源嗅探下载工具
之前下载网站视频都是用 Downie,为此还买了个会员,用了有好几年,效果中规中矩,时灵时不灵。最近不知道什么情况,经常嗅探不到资源,即使有时能嗅探到,也会卡在下载界面。
后来就发现了猫抓,用了一段时间,体验非常好,一句话总结就是:免费、好用、强大。
开源完全不输(吊打)付费的。
猫抓的嗅探功能非常强大,安装完插件后我在几个常用视频网站上分别试了下,基本上都能很精准的拿到资源链接,不论是 m3u8 还是 mp4 格式,定位都很准确。再拿 Downie 作为对比,一些网站 Downie 经常报了一推 m3u8 链接,根本不知道哪个才是真正的资源链接。
猫抓成功检测到多个视频资源
功能
主打功能:资源嗅探、合并、下载。
自动嗅探网页中的视频资源:打开资源网页会自动开始工作,无需要任何操作。
自动合并 .ts 片段为完整 MP4 文件。 这一点非常方便,因为很多视频网站都是 m3u8 格式的,包含了多个 .ts 切片,以前下载后还需要再用脚本,比如 ffmpeg 来合并,现在直接在猫抓中就可以完成。果然,优秀的产品一定会考虑细节的。
资源下载完之后,可在插件里播放或者下载到本地。
说到“猫抓”这个名字,不知道作者为何起名叫猫抓,而不是猫嗅,毕竟嗅探是插件的入口,也是第一任务,难不成为了跟“虎嗅”网避嫌 ?😃
安装方法
官方提供多种安装渠道:
Chrome 应用商店 https://chrome.google.com/webstore/detail/jfedfbgedapdagkghmgibemcoggfppbb
Firefox 组件 https://addons.mozilla.org/addon/cat-catch/
Edge 扩展商店 https://microsoftedge.microsoft.com/addons/detail/oohmdefbjalncfplafanlagojlakmjci
如果想自己开发并扩展功能,或者自己打包后安装,可以 fork 官方 GitHub 开源项目 https://github.com/xifangczy/cat-catch,自己随意 diy。
使用
嗅探
安装之后,无需任何操作,打开在线视频页面,猫抓会自动工作。原理是通过拦截网络请求,通过规则分析资源相关链接。
自动嗅探出 m3u8 资源
支持嗅探的格式非常全面,包括 m3u8、mp4、flv、avi、mkv、mov、wmv、webm 等,基本涵盖了所有主流格式。除了视频之后,嗅探音频、图片也是可以的。
资源下载
在视频播放页面打开浏览器扩展,可以看到多个资源链接
找到 M3U8 或者 mp4 格式的资源链接,直接点击下载
下载完成后,会自动合并 .ts 片段为完整 MP4 文件
下载 m3u8 资源
下载过程中也可以直接播放,播放的是已经下载的 .ts 片段,播放效果和原视频一致。
下载采用了多线程,默认是 6 个线程,觉得不够还可以再加。实测下载速度非常快,闲时能跑满带宽。
下载完之后,也可以对视频继续操作,比如把 ts 文件转成 mp4 文件,或者音视频合并(一些网站音视频是分离的,因此下载后需要合并),这些操作本质上也是调用 ffmpeg 来处理。作者提供了一个网页版本的操作界面,设计还挺 geek 风格的。
当然,开发者如果习惯用命令行,在终端下调 ffmpeg 也是一样的。
视频操作界面
高级玩法
Cat Catch 是通过网络拦截 + DOM 检测 + API 钩子三把斧来获取媒体资源,对应的,拦截及检测是少不了规则配制的。
规则匹配
在设置里面可以自定义扩展和类型匹配规则,这一功能为了让插件识别哪里是目标资源链接。默认规则 audio/*, video/* 都加里面了,正经网站开发者也都会在资源路径中使用这些关键词。
如果这些还不能满足你的需要,插件也提供了规则 diy 模式:正则表达式,使用前提呢,当然是你知道目标链接的大致格式,然后总结一套合适的正则规则。比如网站的资源格式是 vdurl=2372973279,那正则规则就是 (vdurl=\d+)。加完正则表达式后,插件在嗅探时会匹配对应的网络请求。
Cat-Catch 正则设置界面
深度搜索 / 缓存捕捉
有的网站把资源隐藏的比较深,这时候如果标准模式拿不到,可以试一下深度搜索模式,这时猫抓会尝试拦截关键函数,分析网页中隐藏的 M3U8 或 MPD(Dash)文件,看看能否找到 m3u8 链接。
如果这个还不行,但你又非常想从这个网站拿到资源,那这时候缓存捕捉功能就可能比较有用。原理就是,先让视频缓存完,再把资源提取出来。所以缺点就是需要等待视频缓冲完毕,好消息是你可以倍速播放或者拖进度条,视频快进完缓存就拿到了。
数据传输
这一点多数用户可能用不到,但家庭影院 DIY 用户会非常喜欢这个功能。
一个非常有用的场景是把资源相关信息,比如名称、大小、链接等元信息推到自已服务器上,然后服务器后台程序自行进行资源分类、下载、整理等工作。
再结合最近比较火热的 AI + MCP,有更多玩法可以去尝试。
猫抓的数据传输功能
更多高级功能也可以参考 官方文档,写得还是不错的。