news 2026/9/7 4:44:42

五分钟跑通猫抓:浏览器资源嗅探与 M3U8 流媒体下载

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
五分钟跑通猫抓:浏览器资源嗅探与 M3U8 流媒体下载

五分钟跑通猫抓:浏览器资源嗅探与 M3U8 流媒体下载

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

猫抓(cat-catch)是一个浏览器资源嗅探扩展,负责把当前页面正在加载的媒体资源筛选出来,让你能预览并下载它们。它在浏览器内完成请求捕获与解析,按作者说明,捕获的数据全部本地存储,不发送到远程服务器,也不含任何跟踪器。

它是怎么工作的

猫抓由三部分组成:注入页面的 Content Script、后台 service worker,以及一组功能页面。页面加载时,catch-script/catch.js 会在document_start阶段接管页面,后台则通过webRequest监听网络请求,逐个检查响应的 Content-Type 与资源大小,把符合"媒体特征"的请求记入捕获列表;对走 MediaSource(MSE)动态加载的播放,脚本会代理 MediaSource 接口,把缓冲中的片段也纳入捕获范围。命中 M3U8 或 MPD 时,资源会被送往对应解析器:解析器在本地读取播放列表,把成百上千个 TS 分片并行取回并合并成一个文件,加密内容则先解密再输出。

这意味着你可以在打开视频页的几秒内拿到可直接下载的文件列表,而不是对着开发者工具逐条排查请求。

安装与第一次嗅探

最省事的方式是去 Chrome 网上应用店搜索"猫抓"或扩展 IDjfedfbgedapdagkghmgibemcoggfppbb,点击安装。作者特别提醒:猫抓是开源的,应用商店里存在被加入广告代码的仿冒版本,安装前核对一下发布者与描述。

想跟进最新版或改代码,走源码安装:

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

然后打开chrome://extensions/,开启右上角"开发者模式",点"加载已解压的扩展程序"选中刚克隆的目录。第三种方式是把 Releases 里的 crx 文件右键另存为后直接拖进扩展页面。

装好后随便打开一个有视频播放的网页,点工具栏的猫抓图标,弹出列表里会按大小、格式列出捕获到的资源,勾选后点下载即可;新版还支持以侧边栏常驻形式打开面板。根据 manifest,完整功能建议 Chromium 内核 104 以上,最低 93。

猫抓捕获列表与下载操作

核心能力一览

能力解决的问题典型输入 → 输出
资源嗅探与捕获网页媒体直链藏在动态请求里,右键保存不到播放过的页面 → 按大小排序的媒体列表,可直接下载或预览
M3U8 解析下载HLS 流由成百上千个 TS 分片组成,无法右键保存一个 m3u8 地址 → 合并后的 MP4 或 MP3,支持 AES-128 解密
MPD 解析DASH 流同样无法直接保存一个 mpd 地址 → 可播放的本地文件
在线 ffmpeg 转码抓下来的格式兼容性差、想抽音频任意已捕获媒体 → 转码后的目标格式
aria2 / MQTT 发送浏览器关标签页任务就没了,想要后台下载媒体任务 → aria2 后台任务或 MQTT 消息
  • m3u8 解析器支持分片并行下载、出错自动重试、按范围或逐片勾选下载(2.6.8 起),并兼容EXT-X-BYTERANGE标签;2.7.2 起还能隐藏已下载成功的切片、给新捕获资源倒序排列。
  • 录制脚本(含 catch-script/webrtc.js)用来处理 WebRTC 通话类页面,配合"深度搜索"覆盖常规嗅探抓不到的情况。
  • Firefox 上部分功能受限(2.7.1 才集中修了一批兼容问题),低版本 Chromium 内核功能不完整。

M3U8 解析与合并下载

三个真实用法

最基础的场景是保存一个 B 站或网课平台的视频:把视频完整播放一遍,点开猫抓,列表里通常能同时看到多个码率的 mp4,选 1080P 那一条先点预览确认画质,再下载。命名模板会按你配置的标签把页面标题替换进文件名,省掉重命名环节。

更典型的是 M3U8 课件合并。把解析出来的 m3u8 地址送进解析器,它会在本地并行拉分片;带加密的流先解密再合并,勾选 MP4 格式后输出可直接进剪辑软件的成片。2.7.2 版本支持隐藏已下载成功的切片,配合分片出错自动重试,长列表的合并任务不用盯着进度条。

分片选择与格式输出选项

第三类是批量抓播客:在设置里把过滤大小设为>500 KB,把图标和短音频片段挡在门外,然后在捕获列表里全选、批量下载。文件多到不想让浏览器挂着时,可以勾选发送到本地 aria2,标签页关掉任务照样跑,转码环节则交给嵌套的在线 ffmpeg 模式。

配置与进阶

options.html 里最能影响体验的是三项。

一是过滤大小。2.6.8 起支持表达式与范围,写法如>100 KB<1 GB500-1000 MB。日常嗅探网页建议至少设>100 KB,能把绝大多数图标、占位图挡掉,列表干净很多。

过滤大小: >100 KB # 只显示大于 100KB 的资源 捕获类型: 视频, m3u8 # 按需关闭音频或图片捕获 倒序排列: 开 # 最新捕获的资源排在列表顶部

二是捕获类型开关,只留你关心的类型,捕获列表短、干扰少。三是屏蔽列表(2.6.5 起),可以按站点粒度关闭嗅探;作者也为网站方保留了[Opt-Out Request]提交流程。

完整配置参考 options.html,嗅探逻辑源码见 catch-script/。

遇到问题时

如果你发现播放了视频、捕获列表却是空的,大概率是视频走了 WebRTC 或纯 MSE 动态加载,试试开"深度搜索",或让猫抓的录制脚本接管该页面再下载。

如果你合并出的 M3U8 文件没有声音,最常见原因是音轨和画面是两条独立流、你只下了画面流,试试在解析器里选中对应的音频流一起下载合并。

如果加载源码版后功能残缺或提示版本不符,大概率是内核太低——1.0.17 之后要求 Chromium 93 以上,完整功能要 104 以上,老内核请装 1.0.16。

适合谁,不适合谁

适合:

  • 经常需要从网页保存课程、播客、素材的普通用户
  • 需要把 M3U8 / MPD 转成 MP4 再进剪辑流程的人
  • 对隐私敏感、希望捕获数据完全留在本地的用户
  • 想把下载任务接到 aria2、ffmpeg、MQTT 做联动的进阶用户

不适合:

  • 需要服务端并发抓取上千个链接的批量任务
  • Chromium 内核低于 93 且不愿升级的用户
  • 只需右键保存静态图片直链的场景,浏览器原生就够

写在最后

当前版本为 2.7.2(2.7.x 连续更新了 m3u8 解析器与多语言支持),许可证为 GPL-3.0,作者要求基于源码二次分发的扩展保持开源。工具只应指向你拥有版权或已获授权的内容。建议先在一个普通视频页把嗅探跑通,再进 M3U8 解析器试一次合并,按需调过滤大小即可。

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

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

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

LX Music开源音乐助手:从音源配置到无损下载完整教程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/7 4:43:50

美的熊墩墩Pro冰箱实测:超薄嵌入、双系统2.0与除菌升级全解析

这次我们来看一台大件家电&#xff1a;美的熊墩墩Pro&#xff0c;一台600L法式四开门冰箱。标题信息里直接点出的重点是超薄嵌入式、双系统2.0和除菌升级&#xff0c;这几个词基本把当前中高端冰箱的技术路线概括完了&#xff1a;容量要大、嵌入要薄、控温要分系统、除菌要跟上…

作者头像 李华
网站建设 2026/9/7 4:42:16

Unity PlayerLoop 核心机制:引擎主循环的完整剖析

一、开场:Unity 是如何「跳动」心脏的? Unity 启动后,玩家看到的是一个不断刷新的画面:角色移动、敌人 AI 思考、动画过渡、物理模拟……这一切都是 PlayerLoop 在调度。 PlayerLoop 不是简单的 while(true) { Update(); }——它是 Unity 引擎的核心调度框架,把引擎的所…

作者头像 李华
网站建设 2026/9/7 4:41:49

Java开发Tron波场测试DEMO:账户生成、TRX转账与TRC-20合约调用实战

简介&#xff1a;面向Java开发者的波场&#xff08;Tron&#xff09;区块链测试DEMO资源&#xff0c;基于Spring Boot与Gradle构建&#xff0c;适合需要快速掌握波场SDK集成、或希望获得一个可直接运行的区块链应用骨架的开发者。资源包为zip格式&#xff0c;约1.87MB&#xff…

作者头像 李华
网站建设 2026/9/7 4:38:30

AI语音对话陪伴软件深度实测:记忆机制与角色稳定性全解析

最近我在手机上下载了几款支持AI语音对话的陪伴聊天软件&#xff0c;重点只测了一件事&#xff1a;它是不是真的能记住我之前聊过什么。结论先说&#xff0c;这类AI语音对话陪伴软件在手机端已经能做到比较自然的角色聊天&#xff0c;但“有记忆”和“记得住、记得准、记得安全…

作者头像 李华
网站建设 2026/9/7 4:38:04

CLI与MCP并非二选一:协议化工具接入的价值与实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华