网页资源嗅探实战指南猫抓 Cat-Catch 让视频看得到也能存得下【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch猫抓 Cat-Catch 是一款开源的浏览器资源嗅探扩展它的使命很简单把网页上那些只能播放、无法保存的视频、音频与图片通过监听网络请求和媒体播放管道精准捕获下来变成用户手里可以下载、可以归档的文件。本文以从装到用、再到读源码的视角展开涵盖部署方式、捕获机制、HLS/DASH 流媒体解析、效率技巧与排查清单希望能帮你把这款工具真正用起来甚至读懂它背后的设计。从无法下载到一键抓取它解决了什么痛点大多数视频网站并不会把媒体文件的直链摆在明面上右键菜单里的图片另存为对视频完全失效打开开发者工具翻 Network 面板又要在几十上百条请求里人肉识别哪一条才是真正的视频地址——遇到分片流媒体时地址还可能按秒刷新。猫抓的思路非常直接浏览器既然能播放就一定存在资源地址把它从请求链路里嗅探出来即可。作为一款 Manifest V3 时代的扩展它的核心亮点可以概括为三句话实时页面一加载便开始工作边播放边捕获无需手动点按钮全格式既支持 MP4/WebM 这类普通直链也覆盖 HLS 分片流、DASH 自适应流还能处理 AES-128 加密的分片本地化解析、解密、合并全部在浏览器内完成不向任何远程服务器上传数据隐私天然可控。三条安装路线商店、源码与 CRX 怎么选应用商店安装普通用户的首选对于绝大多数人直接在官方扩展商店安装是风险最低、体验最好的方式平台安装入口注意事项ChromeChrome Web Store自动更新推荐 104 内核体验完整功能Microsoft EdgeEdge 加载项商店设置可跨设备同步FirefoxFirefox Add-ons部分 API 能力受限需非国区 IP 访问Edge Android商店或扫码安装移动端有专门优化Edge Android 用户可以直接扫描下方的安装二维码免去手动搜索的麻烦源码加载与 CRX 部署面向开发与内网场景想阅读源码、参与贡献或者做二次开发的读者可以克隆仓库后用开发者模式加载git clone https://gitcode.com/GitHub_Trending/ca/cat-catch随后在扩展管理页面开启开发者模式点击加载已解压的扩展程序选中项目目录即可完成安装。这种方法的好处是改动代码后刷新即可生效非常适合边读边调试。而企业内网、离线办公这类无法访问商店的场景更推荐 CRX 部署从 Releases 页面下载预编译的 crx 文件开启开发者模式后直接拖入扩展管理页面几秒钟完成批量分发。需要留意版本兼容性1.0.17 之后的版本要求 Chromium 内核不低于 93若想体验侧边栏、深度搜索等完整能力建议使用 104 以上的内核。捕获链路拆解请求代理与媒体管道嗅探理解了怎么装接下来看看它凭什么能看见资源。整个捕获体系的入口在catch-script/catch.js核心是一个名为CatCatcher的类它的捕获来源分上下两层。第一层网络 API 代理。扩展在页面上下文重写了XMLHttpRequest与fetch两个原生接口。站点脚本每发起一次请求地址都会先经过一层登记命中媒体规则如data:video/、data:audio/这类内嵌数据或常见的音视频 MIME 类型的请求被记录进资源列表。第二层MediaSource 管道监控。现代视频站普遍把视频切成数秒一分片通过 MediaSource API 动态喂给video标签播放。直接监听 URL 很容易漏掉只存在于内存里的分片因此扩展会代理 MediaSource 相关方法在分片被送入播放器的瞬间捕获其真实地址。// catch-script/catch.js 中资源筛选的核心判定示意 const dataRE /^data:(application|video|audio)\//i; // 内嵌 base64 媒体 const filter new Set(); // 地址去重避免重复记录捕获之外还有一道兜底网——catch-script/search.js实现的深度搜索。它会进一步遍历页面脚本、Worker 线程、Blob URL 等难以触及的角落把藏在 JS 变量里的直链也一并翻出遇到 iframe 嵌套播放器时扩展会通过setupIframeProcessing自动处理 sandbox 属性防止跨域限制造成漏抓。打开插件弹窗所有捕获到的资源会以列表形式呈现你可以直接在弹窗里预览视频、查看分辨率与 MIME 类型也可以勾选后批量下载或复制链接深入流媒体实战HLS 分片世界的拆解与重组普通直链属于开箱即食而 HLS 流媒体则是需要拼装的乐高。当捕获到.m3u8链接后点击进入解析器对应m3u8.html与js/m3u8.js你会看到一次完整的拆解—解密—重组流程。拿到 M3U8 清单只是第一步M3U8 文件本身只是一份播放说明书真正的内容是里面罗列的一长串.ts分片地址。解析器会自动读取清单、展开分片列表并识别每个分片的时长、大小与排序自适应码率与加密处理很多站点会为同一部视频准备多档清晰度清单里通过BANDWIDTH与RESOLUTION属性标识。解析器会列出所有可选档位让你按需挑选而不是被动接受默认码率。对于加了密的流lib/m3u8-decrypt.js负责处理 AES-128 的密钥识别与解密。界面中可以直接看到密钥地址URI...、加密算法与偏移量IV解密后的分片会被重新合并成完整的视频文件。如果站点用的是自定义加密也支持手动粘贴密钥参与解密。DASH 与其他扩展能力除了 HLS项目还通过lib/mpd-parser.min.js支持 MPEG-DASH 格式的解析读取 MPD 清单、识别多码率分片、按时间段下载并支持断点续传。配合lib/hls.min.js、lib/mux.min.js等第三方库猫抓在格式覆盖面上基本做到了主流协议通吃。此外解析器还提供发送到 FFmpeg调用 m3u8DL等外部工具联动入口适合需要定制合并参数的进阶玩家。让捕获更聪明正则过滤、快捷键与脚本录制资源嗅探类工具用久了你会希望它按需工作。猫抓在这方面提供了不少可操作的调节项自定义正则过滤在设置页配置资源识别规则只捕获你关心的类型比如只要.mp4或特定域名下的资源减少无关请求的干扰快捷键体系扩展注册了多组命令包括开关捕获、自动下载、缓存捕获、打开 M3U8 解析器、深度搜索与清空列表全部可在扩展快捷键设置中自定义录制脚本catch-script/recorder.js与recorder2.js实现了操作录制能力——把捕获→解析→下载这套流程录成脚本遇到重复性抓取任务时一键重放媒体控制js/media-control.js提供了倍速播放、画中画等辅助能力方便你在确认资源内容后再决定是否下载。常见问题排查清单遇到抓不到下不动的情况先别急着怀疑工具坏了按下面的顺序逐项排查往往能快速定位症状可能原因处理建议列表始终为空扩展权限未启用 / 页面未完全加载确认扩展已开启刷新页面或等待动态资源加载完成能捕获但下载失败网络波动或站点防盗链检查网络连接必要时更换下载线程配置后重试M3U8 解析报错分片地址为相对路径或跨域确认是否勾选拼接基础地址查看解析器提示的密钥信息部分视频网站无效果站点禁止了扩展运行尝试深度搜索或手动粘贴 M3U8 链接到解析器浏览器版本过低内核低于 93升级浏览器或回退到 1.0.16 版本隐私边界与开源生态最后聊聊信任问题。猫抓在隐私设计上有几个值得称道的点所有捕获数据都在本地存储处理不包含任何远程跟踪代码权限遵循最小化原则只申请运行必需的网络与下载权限完整源码开源GPL-3.0任何人都可以审计或自行构建。项目还提供了友好的拒抓机制——如果你运营的网站不希望被嗅探可以在仓库提交[Opt-Out Request]格式的 Issue 说明域名官方会将其加入避免抓取列表。这种对内容方权益的尊重在同类工具里并不多见。国际化是它的另一大特色_locales/目录下维护了中、英、日、韩、俄、西、葡、土、越等十种语言的翻译社区贡献者通过补充messages.json即可接入新的语言版本。如果你对浏览器扩展开发感兴趣从阅读catch-script/catch.js的捕获逻辑入手再对照js/m3u8.js的解析流程几乎就是一份现成的 MV3 扩展进阶教材。写在最后从看得到却存不下的日常痛点出发猫抓 Cat-Catch 用一套并不复杂的请求代理思路撬动了直链下载、HLS 解密合并、DASH 自适应解析等一整套能力。它既适合普通用户拿来即用也为开发者留下了完整的阅读与扩展空间。网页资源嗅探的本质是理解浏览器如何获取并呈现内容——读懂猫抓某种意义上也是读懂现代 Web 媒体传输的一扇窗口。下一次当你遇到存不下来的视频时不妨打开它看看背后究竟发生了什么。【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考