源码湾 源码湾

SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

源码湾
2小时前发布
资源信息 Chrome / Edge / Firefox 四个包,解压即装。
版本
v6.1.7
授权
GPL-3.0
体积
8.6 MB
语言
JavaScript
数据库
无
夸克网盘 无提取码 下载

今日下载 1 累计下载 1 还剩 9 个

看长视频最消耗耐心的不是内容,是正片里插的那段推广。口播一来,手就得摸进度条:拖早了漏台词,拖晚了还得再拖一次。片头、订阅提醒、片尾求三连,同一个动作重复十几遍。

SponsorBlock 换了个思路:不猜,用众包。观众把「这一段是广告」标出来,别人投票,票数够的片段所有装了扩展的人共享——播放到那里直接跳过去。我查了一个视频的片段记录,接口返回 141 条同前缀数据,命中的那条里有 3 个片段,其中 music_offtopic 0–4.013 秒、filler 222.313–247.095 秒,都标成了 locked。v6.1.7,GPL-3.0,Chrome、Edge、Firefox 三个浏览器四个包,合计 8.59MB。

Windows 和 Linux 两边我都跑了一遍。先说结论:装和用都没有门槛,但它有一个我在这台机器上验不了的环节——自动跳过的动作本身,原因写在「三个真实的坑」里,别把我没测的东西当成已测。另外它不适合三类人,后面单独写。

它是什么,和广告屏蔽扩展差在哪

不是一类东西。广告屏蔽扩展拦的是请求:贴片、横幅、追踪脚本,请求发不出去,广告就不存在。SponsorBlock 一个请求都不拦,它处理的是已经下发的视频内容里被人手动划出来的段落——所以它能跳广告,也能跳片头、跳「记得点赞」、跳一段跟主题无关的闲聊。

每类行为可以单独设:跳过(进度条直接跳过去)、显示标签(不跳,只在进度条上标一段颜色)、加载时询问。设置面板里能读到 14 个类别:赞助商广告、无偿/自我推广、独家限定、互动提醒、精彩时刻、过场/开场、结束画面、预览/概要、引子/问候、偏题/笑话、章节、音乐·非音乐部分等。

还有个设计值得说:它不把完整视频 ID 发给服务器。客户端先算 sha256(videoID) 取前 4 位当哈希前缀,一次把该前缀下所有片段拉回来,本地再筛。实测的 9bZkp7q19f0 前缀是 2691,一次返回 141 条,只有 1 条属于这个视频。代价是流量大,好处是观看记录在服务器上拼不出完整视频。

我的测试环境

  • Windows:Windows 11,Playwright 自带 Chromium 156.0.8078.4,persistent context 加载扩展
  • Linux:CentOS Stream 9,内核 5.14.0-626,香港节点,面板 Web 终端,机器上没有 node
  • 四个包:ChromeExtension.zip、EdgeExtension.zip、FirefoxExtension.zip、FirefoxSignedInstaller.xpi
  • 截图:桌面 1400 宽 dsf 1,手机 390 宽 dsf 2,共 10 张
  • 路径:加载扩展 → 读 manifest → 打开 popup 与设置页 → 走扩展自身权限请求片段接口

安装:Chrome 和 Edge

  1. 解压包,Chrome 用 chrome-mv3 文件夹,Edge 用 edge-mv3
  2. 地址栏输入 chrome://extensions/,Edge 是 edge://extensions/
  3. 右上角打开「开发者模式」
  4. 点「加载已解压的扩展程序」,选文件夹本身,不是里面的某个文件

扩展管理页 - SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

加载完能看到版本号 6.1.7 和 Service Worker 状态,实测从点「加载」到扩展可用 1.54 秒。装完 chrome.storage.local 里只有一条 alreadyInstalled: true。

别想着用命令行一键加载。 Chrome 137 之后移除了 --load-extension 启动参数,我写别的扩展教程时踩过,怎么调都不生效,扩展压根不加载。手动路径就是上面四步。

安装:Firefox

Firefox 有两个包,用途不同:

  • firefox-mv2 文件夹:解压后的加载版,gecko id 是 sponsorBlocker@ajay.app
  • 安装包/FirefoxSignedInstaller.xpi:签名安装包,但它是 BETA 通道,id 是 sponsorBlockerBETA@ajay.app,名字显示为「BETA - SponsorBlock」

这两个不是同一个包,别混着用。文件夹版走临时加载:about:debugging#/runtime/this-firefox → 「临时载入附加组件」→ 选 manifest.json。重启浏览器后会消失,需要再载一次;想长期用就装那个 xpi。

安装:Linux

Linux 桌面上的 Chromium、Chrome 装法和 Windows 一样,把 chrome-mv3 目录拷过去,chrome://extensions 里加载即可。

但纯服务器没有图形界面,装不进去。所以 Linux 侧我做的是产物一致性验证,这一项反而更重要:

  • 四个资产在服务器上用加速前缀重新下载,5/5 sha256 与 Windows 侧完全一致
  • unzip 出 145 个文件,manifest.json 5218 字节,和 Windows 侧同尺寸
  • 145 个文件逐个算 sha256,按相对路径排序后整串再哈希:Windows 是 445cfe7e5c50845c53214ba2c33ec32c129f3261c20d97502d2b8d9f60ca4006,Linux 也是同一个值

两个平台解出来的扩展逐字节相同。机器上没有 node,JS 语法这一层没做静态检查,由 Windows 侧的实际加载覆盖。

第一次打开:先把行为页配一遍

点工具栏图标,弹窗固定 374 像素宽。最上面是全局开关,中间是提交入口和个人成果(提交数、跳过数、节省时间),下面是帮助、排行、捐赠。

真正决定体验的在「行为」标签页:14 个类别,每类可选跳过方式,还能给进度条配色。我这份装的默认值是:

  • 赞助商广告 = 自动跳过
  • 独家限定 = 显示标签
  • 精彩时刻 = 视频加载时询问
  • 章节 = 显示章节
  • 无偿/自我推广、互动提醒、过场/开场、结束画面、预览/概要、引子/问候、偏题/笑话、音乐·非音乐部分 = 禁用

建议一开始只开「赞助商广告」,跑几天看看它切的位置准不准,再逐个加。「精彩时刻」这类边界模糊的类别先别动,一开就容易切在正片中间。

实测数据

  • 包体积:Chrome 4.44MB / 145 文件;Edge 2.85MB / 111 文件;Firefox 4.44MB / 145 文件;xpi 4.49MB / 150 文件
  • 解压耗时:0.08 ~ 0.21 秒,逐成员 CRC 校验无坏块
  • 启动到扩展可用:1.54 秒,返回时 Service Worker 已注册
  • popup.html:HTTP 200,DOMContentLoaded 68 毫秒,宽度固定 374 像素
  • 设置页:HTTP 200,DOMContentLoaded 98 毫秒,内容高 2086 像素
  • 失败请求 / 控制台报错:0 / 0,popup 9 个请求、设置页 7 个请求全是内部资源
  • 片段接口:哈希前缀 2691 → 200,往返 231 毫秒,141 条记录,命中 3 个片段
  • 15 个常见视频直查:11 个返回 200,4 个 404(404 表示没人提交过片段,接口正常)
  • Linux 侧一致性:5/5 sha256 一致,145 文件树哈希两侧相同
  • 服务器侧接口:200,6.748 秒来回(香港节点回源,比本机慢一个数量级)
  • 成品包:407 个条目、8.59MB、9008345 字节

解压即用也验了一遍:解到全新目录,装载 chrome-mv3,树哈希和原包一致,加载成功,popup 200 / 92 毫秒 / 374 像素,设置页 200 且标题是「选项 - SponsorBlock」,片段接口 200 / 296 毫秒,控制台 0 报错。

界面长什么样

弹窗 主面板 - SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

行为页是配置主战场,14 个类别横向铺开,每行都有跳过方式的勾选框和颜色:

设置 跳过类别 - SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

界面页只有两项:语言和主题。语言跟随浏览器,不跟随系统——坑里写:

设置 界面 - SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

设置页一共六个标签:行为、界面、快捷键、备份/恢复、其他、帮助。快捷键页有 12 组绑定,可以自己改。

扩展自带一份完整帮助页,不用联网:

内置帮助页 - SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

390 宽度下弹窗是这样,能用,但设置页那一横排类别会被挤出可视区:

手机 弹窗 - SponsorBlock 赞助跳过扩展:8.6MB,跳过哪段观众投票

三个真实的坑

第一个,我这台机器连不上 YouTube 主站,所以「自动跳过」这个动作我没实测。

www.youtube.com 的 DNS 被污染,解析到 31.13.92.37,不是任何 Google 地址;HTTPS 连接 time_connect=0.000,21.0 秒超时,curl 的 http_code 是 000。我能验证的是三件事:扩展能加载、UI 全量可用、片段数据链路通(哈希前缀接口走扩展自己的 host 权限,200,231 毫秒,返回真实片段)。跳转时机、提示条样式、静音片段怎么处理,一个都没验。 你要看到有文章写「实测跳过 3 分钟广告」,先确认他那边能打开 YouTube。

第二个,独立标签页打开 popup.html 会丢上下文。

调试时我直接把 chrome-extension://<id>/popup.html 当普通页面打开,顶部一直显示「未找到 YouTube 视频。如果识别错误,请刷新此页面。」不是坏了,是这么打开拿不到 activeTab。真实点工具栏图标不会这样。截图里的弹窗都是这么截的,那句话看着别扭,实际使用见不到。

第三个,设置页不是 document 滚动。

滚动容器是 #options 自己(scrollHeight 2086 / clientHeight 1000),直接整页截图只能截首屏,要先把容器改成 height:auto;overflow:visible。另外这页在 390 宽度下不是响应式的,「进度条颜色」那两列会被挤出可视区,需要横向滚动。

还有两个小的:扩展 UI 语言取浏览器界面语言,自动化里只设 locale 是英文,必须加 --lang=zh-CN;全新 profile 第一次打开 popup 会先渲染一版占位数据(用户名 user96258741、提交数 39),第二次启动才是正确的 64 位 ID 和 0。

装完要做的三件事

第一,在备份页导出一份设置。 设置和片段都能导成文件,换机重装靠这个最快。

第二,把你遇到的广告段提交一遍。 没提交过只能吃别人投出来的数据,提交过冷门视频才有片段可跳。播放器右下角有提交按钮,拖出起止点即可。

第三,把快捷键改掉。 默认 12 组绑定里有几组和浏览器自带热键冲突,改一个顺手的组合。

这几类人适合,这几类不适合

适合:

  • 每天看长视频、被口播推广反复打断的人
  • 通勤、做饭、健身时把视频当背景音,手碰不到进度条的人
  • 公司电脑或用别人的机器,装不了应用商店扩展的人
  • 只讨厌正片里的广告,不介意贴片横幅的人

不适合:

  • 主要刷十几秒短视频的。短视频没有可划的段落,装了等于没装
  • 打不开 YouTube 的。扩展装了没处生效,别下
  • 不接受众包判定的。跳哪儿由别人投票决定,边界偶尔切在台词中间
  • 只想屏蔽广告请求的。那是广告屏蔽扩展的活,这个拦不了一个请求

常见问题

源码获取

建议先转存到自己网盘再下载。手机上打开链接点右下角「保存到网盘」,回头在夸克 App 的「我的网盘」里下载。

实测说明

本文截图全部来自本站实测环境(源码湾 yuanmawan.com),实测版本 SponsorBlock v6.1.7,许可证 GPL-3.0。

© 版权声明
THE END
喜欢就支持一下吧
点赞 0 分享 收藏
评论 抢沙发
OωO
取消