news 2026/9/6 21:57:16

猫抓Cat-Catch浏览器资源嗅探完整指南:如何下载那些“下载不了“的网页媒体

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
猫抓Cat-Catch浏览器资源嗅探完整指南:如何下载那些“下载不了“的网页媒体

猫抓Cat-Catch浏览器资源嗅探完整指南:如何下载那些"下载不了"的网页媒体

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

打开开发者工具,网络面板里明明躺着 .ts 分片的地址,复制进下载器的瞬间却变 403——视频播得好好的,保存的路断了。猫抓(Cat-Catch)这款开源的浏览器资源嗅探扩展就是为这种场景做的:你正常浏览页面,它在后台盯着网络流量,把加载过的媒体资源一条条捞出来给你。

猫抓Cat-Catch定位与能力边界

猫抓是一款浏览器资源嗅探扩展,用于筛选、列出并下载当前页面加载的全部资源。装好即工作,无需复制任何地址:

  • 被动嗅探:记录页面媒体请求,静态资源一网打尽
  • 缓存捕获:MediaSource 动态注入的分片也能还原成文件
  • m3u8 解析:播放列表解析、密钥识别、多线程合并下载
  • 多协议:DASH/mpd 清单、WebRTC 直播流录制
  • 外部对接:Aria2 RPC、m3u8dl:// 协议、在线 ffmpeg 转码
  • 十种语言:中英日西俄韩越土等界面可选

双层捕获原理:一张网听流量,一张网看代码

猫抓的捕获机制是"一明一暗"两张网:

猫抓的双层捕获模型 ├── 明网·网络层:webRequest 监听全部请求 │ └── Content-Type / URL 后缀命中媒体规则 → 记入资源列表 └── 暗网·页面层:注入脚本代理 MediaSource └── 截留 appendBuffer 写入的每个分片 → 还原完整文件

明网最朴素:js/content-script.js 以document_start时机注入所有 iframe,配合webRequest权限把命中的请求按标签页归档,静态 mp4、音频、图片大多在这一层就被抓到。

暗网才是拉开差距的地方。越来越多视频走 MediaSource 通道:服务端把画面切成小分片,由页面 JS 逐块喂给播放器,网络层看到的只是无头无尾的二进制。catch-script/catch.js 里的CatCatcher类会在页面内代理 MediaSource 的写入方法,每次appendBuffer都截留一份数据,分片攒齐即还原成完整文件,顺带覆盖了缓存捕获、录制和 iframe 沙箱场景。

它比普通嗅探工具多走的一步在于:不只盯着网络流量,还把手伸进了页面的 JavaScript 运行时,拦截那些从未以完整 URL 出现过的数据。

功能深挖一:从资源列表到落盘

你如何使用:点开工具栏图标,弹出面板(或浏览器侧边栏)列出当前标签页的全部资源;正则筛选、按时长大小排序、右键快捷菜单(2.7.0 加入)随你组合,勾选即下载。某个视频点不动时,它会自动转给 m3u8 解析器,补上正确的 Referer 再试一次。

背后如何运转:资源数据存在storage.session(每页上限 9999 条),心跳保活让后台随时可唤醒;下载由 js/downloader.js 执行,文件名支持${url}${origin}${cookie}等模板标签与正则提取。

功能深挖二:m3u8 解析器把"菜单"变成文件

你如何使用:遇到.m3u8链接点入解析器,先看总时长、分辨率、预估大小与密钥状态,再定下载范围、勾选切片,用默认 6 线程并发拉取,失败自动重试;完成后可本地转 mp4,或推给 Aria2、在线 ffmpeg。密钥拿不到就手动上传,或让深度搜索去翻疑似密钥。

背后如何运转:解析内核在 2.2.2 换成 hls.js(lib/hls.min.js),事件驱动地加载 MANIFEST 与 LEVEL 清单,比早期的正则方案完整得多;下载器 js/m3u8.downloader.js 默认 6 线程,兼容EXT-X-BYTERANGEEXT-X-MAP这类麻烦标签。两个补丁值得点名:2.7.0 起从浏览器缓存直接读取 m3u8 内容,专治"播放列表 URL 看一眼就失效";catch-script/search.js 递归遍历页面数据收集密钥候选,2.5.7 起还支持密钥验证。

演进与决策地图:一部对抗浏览器限制的小史

版本阶段关键变化解决的真实问题
1.0.17迁移 Manifest V3Chrome 强制启用新规范
1.0.24Heart Beat 心跳机制Service Worker 休眠导致失联
2.0.0视频捕获与录制功能被动嗅探抓不到动态加载的视频
2.2.xhls.js 内核、DASH/mpd、直播录制播放列表解析不全、格式单一
2.4.7并发调至 6 线程、Aria2 RPC下载不稳、缺外部下载器生态
2.5.3存储改用 storage.sessionlocal 高频读写触发 IO 错误
2.7.0右键菜单、缓存读取 m3u8"一次性 URL" 失效无解

💡心跳对抗 Service Worker 休眠。MV3 把后台收进 Service Worker,空闲即被杀,扩展直接失联。1.0.24 起内容脚本与弹窗页定期向 js/background.js 发HeartBeat消息保活。更新日志写得很直白:"该死的 Service Worker……继续用肮脏的手段对抗 Manifest V3"——牺牲常驻的一点唤醒开销,换来扩展状态不再随后台睡眠蒸发。

存储从 local 换到 session。2.5.3 把配置迁到storage.session,因为前者高频读写出过 IO 错误、直接把扩展搞崩。代价是跨会话的持久性没了,用导入/导出配置功能补救——对一个"开着就不许挂"的工具来说,这笔账划算。

双路径上手:五分钟装好或读起来

只想用,三步走:

  1. 在 Chrome / Edge / Firefox 商店搜索 "Cat-Catch" 安装(注意辨别带广告的仿冒包)
  2. 打开含媒体内容的页面,点工具栏猫爪图标
  3. 资源列表里筛选、勾选、下载;遇到 m3u8 就点进解析器

想看源码:克隆仓库到本地后,在扩展管理页开启开发者模式,"加载已解压的扩展程序"选中项目文件夹即可运行:

git clone https://gitcode.com/GitHub_Trending/ca/cat-catch

阅读入口:嗅探与缓存捕获 catch-script/catch.js,m3u8 解析与下载 js/m3u8.js、js/m3u8.downloader.js,后台心跳 js/background.js,WebRTC 录制 catch-script/webrtc.js。

收尾:它解决了什么根本问题

猫抓解决的根本问题,是在浏览器划定的沙箱里,把"网页上的媒体"变成"你硬盘上的文件"。它适合想离线存课的普通用户、要归档素材的剪辑师、研究流媒体协议的开发者,以及想抄 MV3 工程化作业(心跳保活、session 存储、多语言)的扩展作者。留一个问题:当 DRM 与一次性令牌越来越普遍,这类工具会不会从"浏览器里抓"转向"浏览器只当车间、本地管线当仓库"?猫抓引入 MQTT 把资源推上云端,或许已经给了第一个伏笔。🚀

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/6 21:55:18

BCG集团战略规划:130页PPT背后的方法论与实操拆解

简介:波士顿咨询(BCG)发布的贵航股份集团战略发展规划报告(130页PPT)是一份面向汽车零部件企业管理者、战略规划人员及咨询顾问的行业战略分析资料。报告围绕汽车行业全球化、智能化、节能环保等趋势,从国际…

作者头像 李华
网站建设 2026/9/6 21:54:13

红外光谱无吸收峰?原因解析与实用排查方法

简介:这份红外吸收光谱特征峰资料面向化学、材料科学研究者及分析测试人员,旨在帮助读者系统掌握有机化合物官能团在中红外区的特征吸收规律,并能依据谱峰位置快速辨识分子结构。资源为单份DOC格式文档,共1个文件,压缩…

作者头像 李华
网站建设 2026/9/6 21:48:05

MAA自动公招:从开箱到刷出第一个高星干员

MAA自动公招:从开箱到刷出第一个高星干员 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: https://gitcode.com/Git…

作者头像 李华