猫抓扩展完整实战指南:网页视频资源嗅探与M3U8下载一次讲透
2026/8/15 19:44:54 网站建设 项目流程

猫抓扩展完整实战指南:网页视频资源嗅探与M3U8下载一次讲透

【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch

网课平台的视频只能在线看、没法缓存到本地;社交平台刷到的短视频想收藏,右键却没有任何下载选项;好不容易抓到一条m3u8地址,面对几十上百个ts分片文件又不知从何下手——如果你被这类问题困扰过,那么「猫抓(cat-catch)」这款免费开源的浏览器资源嗅探扩展,很可能就是你要找的答案。

一句话先讲清楚它是做什么的

猫抓是一个运行在浏览器里的资源嗅探工具,它能把当前网页加载过的视频、音频、图片等媒体文件一一列出来,并支持直接下载。它区别于普通下载工具的核心能力在于:能识别并解析M3U8流媒体(HLS 协议),把加密的、分片的在线视频完整抓取并合并成单个文件。换句话说,网页里那些"看起来没法下载"的视频,用它多半能拿到手。

项目源码位于GitHub_Trending/ca/cat-catch,采用 Manifest V3 规范开发,兼容 Chrome、Edge、Firefox 三大主流浏览器,且所有数据都在本地处理,不上传任何服务器。

核心能力速览

  • 🎯页面资源嗅探:自动拦截并分类当前页面的媒体请求,视频、音频、图片一目了然,还附带大小、时长、分辨率等元数据
  • 📺M3U8 深度解析:识别 HLS 分片列表、计算总时长、支持 AES-128 加密解密,最高支持数十线程并发下载后合并为 MP4
  • 🛠️MPD / JSON 工具:内置 DASH(MPD)解析器与 JSON 格式化面板,覆盖更多流媒体场景
  • 🌍9 种语言界面:中文、英文、西语、日语、葡语、俄语、土耳其语、越南语、繁体中文,国际化做得很完整
  • 🔐开源且无追踪:代码完全公开可审计,无内置跟踪器,处理过程全程本地完成

一次完整实战:从嗅探到合并的五个步骤

与其罗列功能,不如跟着一条完整的操作链路走一遍。以下流程适用于大多数"在线可看、本地不可存"的视频网站。

第一步:安装并确认扩展生效

两种主流装法任选:

  1. 商店安装(推荐普通用户):在 Chrome 网上应用店、Edge 加载项商店或 Firefox 附加组件商店搜索 "cat-catch" 直接安装。注意 Firefox 商店版本需要非国区 IP 才能访问。
  2. 源码安装(推荐开发者):克隆代码后在扩展管理页开启"开发者模式",点击"加载已解压的扩展程序"选中项目文件夹即可:
git clone https://gitcode.com/GitHub_Trending/ca/cat-catch

安装完成后,浏览器工具栏会出现一只小猫图标。装好之后顺手做两件事:到设置里确认嗅探开关已打开;用快捷键(可在扩展快捷键设置中自定义)把"暂停/启用嗅探"和"M3U8解析器"绑定到手边,后面会频繁用到。

第二步:打开嗅探面板,识别页面资源

打开目标视频页面,点击工具栏的猫抓图标,弹出面板会立刻列出当前页面检测到的所有媒体资源。默认按"当前页面"和"其他页面"两个维度分组,方便在多个标签页之间切换查找。

面板里每个资源条目都带有类型、大小、时长信息,右侧是下载与播放按钮。点击条目可以在底部预览区看到视频缩略图、MIME 类型和分辨率。这一步的核心价值在于:你不需要会看网页源码,猫抓替你完成了资源定位

面板下方还有"全选 / 反选 / 筛选 / 清空"等批量管理按钮,以及"模拟手机"、"自动下载"、"录制脚本"等进阶入口,稍后逐一展开。

第三步:M3U8 解析与加密处理

如果嗅探到的资源是 m3u8 类型的流媒体(典型特征是文件极小、只有几十 KB 的播放列表),直接下载拿不到视频本体。这时应该把资源地址交给内置的M3U8 解析器——点击面板上的解析入口,或者直接调用之前绑定的快捷键。

解析器会完成三件关键工作:

  1. 拉取播放列表:读取 m3u8 文件内容,解析出全部 ts/m4s 分片地址
  2. 识别加密信息:检测播放列表中的#EXT-X-KEY标签,自动提取加密方式、密钥地址与 IV 偏移量
  3. 生成下载方案:把分片地址整理成可执行的下载任务列表

遇到 AES-128 加密的流媒体,可以在"密钥/IV"参数区手动填入密钥与偏移量,猫抓会调用内置的m3u8-decrypt.js(位于lib/目录)在下载过程中完成解密。加密处理不额外增加操作成本,填好参数后照常下载即可。

第四步:并发下载与进度管理

确认分片列表无误后,点击"下载显示内容"或"合并下载"。猫抓会按配置的线程数并发拉取所有分片,并在独立下载器页面显示实时进度。下载器页面(对应源码中的m3u8.downloader.js)支持暂停、断点续传,长时间下载任务也能中途挂起再恢复。

线程数可以在设置里调整:网络状况好、带宽充足时可以加大并发数拉高速度;反之调小,避免大量并发请求触发网站限流或 IP 风控。

第五步:分片合并为完整文件

全部片段下载完成后,猫抓会把 ts 分片按顺序合并,输出为单个 MP4 文件。这一步在本地完成,不依赖外部服务,速度只受磁盘读写影响。至此,一个"在线只能看、本地拿不到"的视频就完整落盘了。

如果你对转码有更高要求,还可以把下载内容交给 FFmpeg,或调用 m3u8DL 这类专业下载工具(解析器界面提供了对应的调用入口),适合需要精细控制封装格式的进阶场景。

进阶玩法与隐藏技巧

基础链路跑通之后,下面几个功能能让效率再上一个台阶,也是很多老用户忽略的地方。

深度搜索:专治单页应用(SPA)网站

不少现代网站的视频是在滚动、切换路由时才动态加载的,普通嗅探容易漏掉。开启"深度搜索"后,猫抓会主动遍历页面加载过程中的所有网络请求,把藏得深的资源也翻出来。遇到"明明有视频却嗅探不到"的情况,先试这个开关。

正则筛选:千人千面的过滤规则

资源列表里的"筛选"输入框支持正则表达式。比如只想保留.mp4结尾的直链视频,输入\.mp4$回车即可过滤;面对一个页面几十条资源时,这个功能能把噪音瞬间清掉。同时,设置中的"扩展名/后缀"规则可以自定义哪些类型需要拦截、哪些直接忽略,避免无关请求堆积。

缓存捕捉与 WebRTC 录制:两条应急通道

  • 缓存捕捉:适合浏览器已把视频数据缓存下来的场景,直接读取内存中的媒体流,绕过 URL 嗅探的局限
  • WebRTC 录制:针对通过 P2P 通道传输的实时视频,猫抓提供专门的录制入口(见catch-script/webrtc.js),可把 WebRTC 流保存为本地文件

这两条通道覆盖了常规 HTTP 请求之外的两类特殊情况,建议至少知道它们的存在。

媒体控制面板:顺手白嫖的播放增强

猫抓不止能抓资源,还内置了媒体控制功能:倍速播放、画中画、截图、循环播放、音量调节等。视频课程的"1.5 倍速听课 + 画中画挂后台 + 一键截图笔记"三件套,在这里一个面板全搞定。

模拟手机:解锁移动端专属资源

部分网站对移动端提供单独的流媒体地址,桌面端反而拿不到。点击"模拟手机"后,猫抓会以移动端 UA 重新加载页面并嗅探,常常能嗅到更清晰或更完整的资源。

踩坑笔记与高频问题

为什么嗅探不到任何视频?

按出现频率从高到低排查:

可能原因对策
页面使用 WebRTC/P2P 传输,无 HTTP 媒体请求改用"录制 WebRTC"通道
视频由 JS 动态注入,加载时序靠后先开启"深度搜索"再刷新页面
网站加密了资源地址,URL 无媒体特征打开"缓存捕捉"试一次
扩展权限不足或内容脚本被拦截检查扩展的站点访问权限设置
触发了网站的反爬策略换网络环境,或调整下载并发数降低请求频率

下载速度慢怎么办?

顺序尝试三招:在设置里加大下载线程数;避开晚高峰时段;把目标地址的 Referer 等请求头补齐(解析器提供请求头参数入口),部分站点对缺失请求头的下载请求会限速。

关于版权与安全的三条底线

  1. 猫抓官方明确声明:仅用于下载你拥有版权或已获授权的内容,禁止用于盗取受版权保护的视频,使用者需自行承担法律责任
  2. 商店里出现过被篡改、植入广告代码的"伪猫抓"扩展,请认准官方渠道,所有安装地址以项目 README 为准
  3. 项目提供了"拒绝抓取"机制:网站方可在仓库提交[Opt-Out Request]议题,官方会把对应域名加入"避免抓取列表",尊重站点运营方的意愿

最后说两句

猫抓的价值不在于功能列表有多长,而在于它把"网页视频 → 本地文件"这条链路压缩到了几次点击之内。开源、无追踪、全本地处理的特性,让它同时适合普通用户解决实际需求,也适合开发者当作浏览器扩展开发的参考样本——catch-script/目录下的嗅探逻辑、_locales/目录下完整的 9 语言国际化实现、lib/里对 hls.js、mux.js、StreamSaver.js 等开源库的整合,都是质量不错的可读代码。

从下一个打不开的视频开始,给这只小猫一个机会。装上它,打开任意一个在线视频页面,点一下工具栏图标——你会看到,那些曾经"只可远观"的资源,正在一行行地列在你面前。

享受这个简单、快速、免费的开源工具吧。愿每一次下载,都只用于你真正拥有它的内容。

【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询