ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

猫抓 cat-catch:一款完整的浏览器资源嗅探扩展,把网页里只能看不能存的视频变成可下载文件

猫抓 cat-catch:一款完整的浏览器资源嗅探扩展,把网页里只能看不能存的视频变成可下载文件 猫抓 cat-catch一款完整的浏览器资源嗅探扩展把网页里只能看不能存的视频变成可下载文件【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch猫抓cat-catch是运行在 Chrome、Edge、Firefox 上的浏览器资源嗅探扩展。它持续监听网页发出的网络请求自动筛出视频、m3u8 播放列表等媒体资源并支持解密、合并、转码为 mp4解决网页视频能看却存不下来的问题。三个真实场景场景一右键视频另存为只存下一个几 KB 的占位文件你在网页上看到一个视频右键另存得到的却是个几乎为空的占位符——真正的媒体文件藏在几百条网络请求里用 F12 手动翻 Network 面板又慢又费经验。猫抓在后台持续嗅探所有请求把符合特征类型、大小、正则的资源自动归入列表你只需让视频播放几秒点工具栏图标在弹出面板里勾选条目点下载所选即可。猫抓弹出面板按标签页分组展示捕获到的视频资源带大小、MIME 类型、时长、分辨率信息可预览后一键下载场景二复制下来的 m3u8 地址只是一个播放顺序表很多网页用 HLS 格式播片一个 m3u8 文本文件按顺序列出几十上百个 ts 切片浏览器边下边播、播完即弃直接下载只得一张清单。猫抓内置的 m3u8 解析器会把切片并发拉取、按序合并遇到 AES 加密流可手动填密钥或用深度搜索自动在页面里找疑似密钥最终经 ffmpeg 转码输出一个完整的 mp4。猫抓 m3u8 解析器展示全部 ts 切片、自定义密钥/偏移量 IV 输入框、下载线程数与合并范围设置场景三WebRTC 视频通话和直播根本没有可嗅探的地址视频通话、部分直播走 WebRTC 直连推流不产生任何常规媒体 URL被动嗅探天然抓不到。猫抓在 catch-script/ 目录提供一组按需注入的脚本开启 WebRTC 录制后页面会出现悬浮面板列出可抓取的音视频轨道可选视频码率与音频码率把通话流录成本地文件另有缓存捕捉脚本对页面内video元素做主动捕获补上被动嗅探的盲区。能力地图能力入口一句话说明资源嗅探与筛选弹出面板 / 侧边栏后台监听所有请求按类型、大小、正则自动归集媒体资源m3u8 解析下载m3u8 资源上的解析器图标切片并发下载、AES 解密、合并、ffmpeg 转 mp4、录制直播捕获与录制脚本面板录制脚本/设置-更多功能注入页面处理 WebRTC 流、缓存捕捉、深度搜索密钥下载与后处理管道下载器 设置页边下边存、自定义文件名标签可发送 aria2 / MQTT / 本地程序 / 在线 ffmpeg资源嗅探与筛选被动监听 主动过滤解决什么媒体文件藏在全站数百条请求中、人工甄别不现实的问题。后台 Service Worker 通过webRequestAPI 在请求发出和响应头到达两个节点捕获数据按可配置的资源类型、大小、正则表达式过滤后入列。怎么用打开任意带视频的网页并播放几秒点工具栏图标查看列表。面板内支持正则筛选、按大小/时长排序2.6.8 起过滤大小支持表达式写法如100 KB、500-1000 MB。下载时会原样复用该资源当时的请求头Referer、Cookie规避多数防盗链。明确不做的事只嗅探页面上真实发出过的网络请求。加密在页面 JS 内部、由 WebRTC 信令协商产生的地址嗅探不到——这部分归录制脚本管。另外每页桌面端最多储存 9999 条、移动端 999 条见 js/init.js 中maxLength配置超限自动清空旧数据不做无限堆积。m3u8 解析下载切片、解密、合并一站式解决什么m3u8 是一百多个 ts 切片 一张顺序表无法直接保存、加密流下不下来、直播流边播边丢的问题。解析器展示全部切片含时长、分辨率估算支持并发下载最大线程数 62.4.7 调整、AES 密钥解密、指定下载范围、按EXT-X-BYTERANGE字节范围切片的合并2.6.8 起并可点选任意切片参与合并2.7.1 起失败切片自动重试2.7.2 起可隐藏已下载成功的切片。怎么用在嗅探列表中点 m3u8 条目的m3u8 解析器图标进入解析页确认切片数与总时长选择合并下载 ffmpeg 转 mp4后开始。密钥可手填支持 16 进制、base64 或密钥地址或用深度搜索在页面脚本中自动挖掘2.5.7 起对疑似密钥提供验证。明确不做的事不处理 DRM如 Widevine保护的内容2.4.3 起已移除 YouTube 专属支持官方建议改用缓存捕捉超过下载器处理能力的超大直播流需配合边下边存或发送 aria2解析页本身不做断点续传的长期任务队列。捕获与录制脚本对付嗅探盲区解决什么WebRTC 直连流、无 src 属性的video等嗅不到的资源。catch-script/ 下共 5 个按需注入脚本webrtc.js录制 WebRTC 轨道2.4.9 加入、2.5.3 重写支持码率设置与定时分段保存catch.js做缓存捕捉/视频捕获2.0.0 加入search.js做深度搜索在页面脚本里找 m3u8 地址与疑似密钥2.2.4 加入2.6.6 增强。怎么用在设置更多功能中开启对应脚本页面会注入悬浮面板选择轨道/目标后开始录制深度搜索得到的疑似密钥会直接显示在弹出面板的疑似密钥标签里2.5.3 起。明确不做的事这些脚本会修改页面行为属于侵入式功能官方建议按需开启而非常驻——2.6.7 就专门修复过深度搜索导致某些网站无法正常使用的问题。它也不负责 DRM 解密只做轨道/媒体流层面的抓取。技术内幕选择一用心跳连接把 Service Worker 顶在休眠线以内MV3 规定扩展后台是 Service Worker空闲约 5 分钟即被浏览器强制终止但资源嗅探必须长期监听后台一死就漏抓。猫抓的方案是让前台页面与后台维持一条名为HeartBeat的端口连接每 250000 毫秒4 分 10 秒断开重连一次始终贴着浏览器有活跃连接不杀的休眠线chrome.runtime.onConnect.addListener(function (Port) { if (chrome.runtime.lastError || Port.name ! HeartBeat) return; Port.postMessage(HeartBeat); const interval setInterval(function () { clearInterval(interval); Port.disconnect(); }, 250000); ... });摘自 js/background.js另有setInterval(chrome.runtime.getPlatformInfo, 25 * 1000)辅助保活为什么这样做嗅探需要跨页面全局视角和请求头访问权这些只有后台 Service Worker 有把它换成常驻 content script 会失去全部能力代价更大。代价是什么这是典型的 hack完全依赖 Chrome 有活跃端口则不终止的未承诺行为浏览器策略收紧随时可能失效——作者在更新记录里也自嘲这是肮脏的手段。选择二storage.session 换 IO 稳定性2.5.3 起缓存数据从storage.local落盘持久切到storage.session内存态并用chrome.alarms定时把内存缓存写回代码里就是这一行(chrome.storage.session ?? chrome.storage.local).set({ MediaData: cacheData });见 js/background.js 的save定时任务为什么这样做storage.local写盘 IO 出错会直接导致扩展不可用注释里写明目的——减少 IO 错误导致扩展无法使用。代价是什么要求 Chrome 104低版本自动回退storage.local即那行??兜底且内存态数据随浏览器会话消失缓存列表不具备跨重启的持久性长列表依赖定时任务及时落回。选择三polyfill 层兼容非标准 Chromiumjs/polyfill.js 对残缺环境逐个打补丁夸克浏览器没有chrome.downloads就用a download点击模拟onChanged等监听全部置为空函数Chromium 114 以下没有sidePanel注入空实现手机浏览器没有contextMenus、commands、windows同样注入 no-op 版本。为什么这样做让同一份代码跑在 Chrome、Edge、夸克、手机浏览器上避免维护多分支。代价是什么在残缺环境里能力明确降级且无感知——夸克版无法监听下载状态、无法判断下载是否失败、无另存为属于能用但残缺作者用一句唉~注释坦承了这一点。三步跑起来安装从 Chrome Web Store / Edge 附加组件 / Firefox Add-ons 搜索 cat-catch 安装或用源码git clone https://gitcode.com/GitHub_Trending/ca/cat-catch打开扩展管理页 → 开启开发者模式 → 加载已解压的扩展程序选中该目录。注意 README 提示商店里存在加了广告代码的伪猫抓以官方仓库为准。第一次嗅探打开任意带视频的网页让视频播放几秒点工具栏猫抓图标。面板按当前页面 / 其他页面分组列出捕获资源名称、大小、MIME、时长、分辨率勾选后点下载所选浏览器会复用当时的请求头发起下载。第一次 m3u8 下载在列表中找到.m3u8条目点m3u8 解析器图标进入解析页确认切片数与总时长勾选mp4 格式后合并下载。完成后浏览器自动保存转码好的 mp4加密流可先用深度搜索找密钥再开始。深度玩法发送到 aria22.4.7 加入 RPC2.7.0 支持指定下载目录支持密钥与 Cookie把下载任务交给本地 aria2 客户端适合搭网页 → NAS的无人值守管道适合进阶用户。MQTT 推送2.6.4把嗅探数据/任务推给自有 MQTT 设备适合做智能家居或自建监控的自动化联动。调用本地程序 / m3u8dl 协议2.5.3 加入调用本地程序2.0.0 起支持m3u8dl://自定义协议调用 N_m3u8DL-CLI大文件交给 CLI 稳定落地浏览器只负责找到并预处理适合下载超大 m3u8 的用户。正则匹配 过滤大小表达式2.6.0 起正则可拿到请求头参与判断2.6.8 起大小支持100 KB、500-1000 MB写法精确控制抓什么、滤什么适合高频嗅探的进阶用户。屏蔽列表与全局强制屏蔽2.5.9 起个人黑名单/白名单2.6.5 起全局强制屏蔽名单站点方可通过 Issue 申请[Opt-Out Request] 域名管理多站点工作流适合嗅探面很广的重度用户。快捷键 自定义 CSS2.4.0为启用/暂停嗅探、捕获、预览绑定全局快捷键manifest 预置了enable、auto_down、deepSearch、m3u8等命令槽位设置页填入 CSS 直接改面板外观适合追求效率与个性化者。能力边界对照平台 / 环境版本要求功能支持情况Chrome / EdgeChromium 93完整功能需 104storage.session侧边栏模式需 114sidePanelFirefoxMV3 构建无侧边栏manifest.firefox.json 未声明side_panel脚本类功能需较新版本内核Edge / 手机浏览器Android2.6.1 起手机适配每页缓存上限降为 999 条无快捷键、右键菜单降级为空实现夸克等修改版 Chromium视内核而定chrome.downloads缺失下载退化为a download模拟无法监听下载失败Safari—不支持无对应构建网页协议http / https内容脚本仅匹配http/https://*/*见 manifest.json明确不支持与已知降级不处理任何 DRM 保护内容Widevine 等解密均不在范围内2.4.3 起移除了 YouTube 专属支持夸克环境下无法监听下载状态、无法另存为属文档化的降级。数据层面所有信息仅本地存储处理无远程上报与跟踪器README 隐私政策受版权保护内容的下载由用户自行担责。选型参考方案形态能做什么局限猫抓 cat-catch浏览器扩展嗅探 m3u8 解析/解密/合并 WebRTC 录制 aria2/MQTT/本地程序后处理管道依赖浏览器环境Service Worker 保活属 hack超大任务不如 CLI 稳N_m3u8DL-CLI命令行工具m3u8 下载主力大文件稳定落地猫抓可通过m3u8dl://协议调用它需先拿到 m3u8 地址无嗅探、无录制能力浏览器 F12 手动查看内置开发者工具查看单条请求、手动复制 URL无自动筛选、无合并/解密/转码三者是互补而非替代关系猫抓负责找到并预处理CLI 负责大文件稳定落地猫抓的 aria2/本地程序调用正是把两者串起来的通道——选型时先问自己是找资源还是下大文件前者选猫抓后者让猫抓把任务递出去。项目脉搏当前版本2.7.2见 manifest.json。近期更新集中在 m3u8 解析器2.7.0 数据预处理与从缓存读取 m3u8 解决一次性 URL 问题、2.7.1 下载失败自动重试、2.7.2 隐藏已成功切片与 Firefox 平台修复2.7.2 修复 Android 下无法使用。CHANGELOG.md 显示发版节奏稳定语言覆盖 11 种中/繁中/英/日/韩/俄/西/葡/土/越/法见 _locales/ 目录多由社区贡献者翻译能力面从 2.0.0 的视频捕获一路扩到 2.6.4 的 MQTT 推送、2.7.0 的右键菜单与标签嵌套。许可为GPL-3.0README 明确基于其源码的扩展应继续保持开源——这是针对山寨加广告上架问题的直接回应。分人群行动建议普通用户装完即用先走三步跑起来里的前两步——从应用商店安装 → 播放一段视频 → 点图标下载第一条资源遇到 m3u8 再进解析器把mp4 格式勾上即可。进阶用户配置 aria2 RPC支持密钥、Cookie、下载目录或m3u8dl://调用 CLI把猫抓变成嗅探入口 分发中枢配合正则与屏蔽列表管理多站点工作流。想学实现的开发者建议从 js/background.js 的HeartBeat端口逻辑读起再看 js/polyfill.js 如何为残缺浏览器环境逐 API 降级最后用 CHANGELOG.md 对照各版本的工程取舍理解一个 MV3 扩展如何与浏览器进程管理周旋。【免费下载链接】cat-catch猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表