猫抓实战教程:网页视频下载与 M3U8 合并只需 3 步
猫抓(cat-catch)是一个开源的浏览器资源嗅探扩展。页面播放视频时,它在后台默默记下网页发出的每一条媒体请求,整理成一份清单——文件名、格式、大小、时长、分辨率全部标好。想做网页视频下载时,勾选、点击就够了;遇到 M3U8 分片流,也能直接合并成一个完整文件。整个过程不需要打开开发者工具,不需要在 Network 面板里翻找。
安装猫抓:两条路和一个内核门槛
应用商店。 在 Chrome 或 Edge 的扩展商店里搜「猫抓」,认准官方页面安装即可。注意项目是开源的,商店里上架过夹带广告的「伪猫抓」,装之前看一眼详情页,别装错。
本地加载源码。 适合想自己控制版本的人:
git clone https://gitcode.com/GitHub_Trending/ca/cat-catch
然后到浏览器扩展管理页打开「开发者模式」,点「加载已解压的扩展程序」,选中克隆下来的目录。
内核门槛要提前说清:1.0.17 版本起要求 Chromium 内核 93 以上,想体验完整功能建议 104 以上。如果你的浏览器内核更老,别硬上最新版,回退到 1.0.16 就行。
第一次跑通:从网页上嗅探并下载视频
装好后打开任意视频页,等页面加载完成,点工具栏的猫爪图标,弹出窗口就是当前页嗅探到的资源列表。页面还在转圈就先刷新一次再点,否则列表是空的。
每条资源下面自带一个小播放器。下载前放几秒是的好习惯——清晰度对不对、内容是不是你要的,一眼就能确认,比下载完再删省时间。
确认无误后勾选目标条目,点「下载所选」,文件就落到浏览器默认下载目录。单文件视频基本就是「点图标 → 勾选 → 下载」三下。
M3U8 分片怎么合并下载
HLS 流被拆成一串 .ts 小片,手动下载再拼接是笔体力活。猫抓对 M3U8 条目提供了专门的解析入口,点开后能看到完整信息:共多少分片、总时长、分辨率,下面是按顺序排好的分片地址列表。
操作分两步:
- 输出格式选 mp4,勾上合并音视频——不少站点声音和视频走不同线路,不勾这一项,下下来的视频可能是哑的;
- 点「合并下载」,扩展按序拉取全部分片并拼成完整文件,下载线程数可以调。
解析器的完整实现在 js/m3u8.js,想看它是怎么拉片、怎么合并的,从这个文件入手。
三个值得留意的差异化能力
深度搜索。 常规嗅探只覆盖页面加载时发出的请求,有些懒加载或动态生成的资源会漏掉。对页面触发一次深度搜索,相当于再做一遍更彻底的扫描,实现脚本在 catch-script/search.js。
交给外部工具接管。 解析好的任务可以发送到 aria2,让本地下载程序接管;也可以发送到在线 ffmpeg 做转码等后续处理。自己不想在浏览器里挂着下载的场景比较实用。
表达式过滤。 设置里的「过滤大小」支持表达式写法,比如 >100 KB、<1 GB、500-1000 MB,配合筛选区把无关的小图标、请求过滤掉,列表瞬间清爽。
哪些场景适合,哪些别碰
适合:普通网页上的视频、音频、图片素材,以及 M3U8/HLS 分片流;备份自己的作品、保存允许下载的内容都很顺手。
不适合:强加密、重度反爬的页面,以及未授权的付费内容。猫抓本身不提供任何绕过保护机制的能力,这类内容请走正规渠道。动手前确认一下你对该资源有保存权限。
常见卡点与解法
- 列表是空的:页面没加载完,刷新后重新点图标。
- 下下来的视频没声音:音视频分流导致的,回 M3U8 面板勾上「合并音视频」再下载。
- 想要的条目不见了:检查筛选区,扩展名或大小的过滤条件可能还生效着,清掉即可。
- 升级后扩展跑不起来:内核低于 Chromium 93 的信号,换 1.0.16 旧版。
- 合并到一半失败:有些分片地址是一次性 URL,重新打开解析面板从缓存取数据就行,不必从头再来。
延伸阅读
完整功能说明、商店地址与免责声明都在 README.md 里。想深入看代码的话,嗅探调度在 js/background.js,M3U8 解析与合并在 js/m3u8.js,两个文件读完基本能摸清这套扩展的运转逻辑。
转载自 CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/gitblog_00092/article/details/156214739





