三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

Bilibili-Evolved 实战进阶指南:技术型用户的 B 站体验终极增强方案

Bilibili-Evolved 实战进阶指南:技术型用户的 B 站体验终极增强方案

Bilibili-Evolved 实战进阶指南:技术型用户的 B 站体验终极增强方案

【免费下载链接】Bilibili-Evolved强大的哔哩哔哩增强脚本项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved

如果你每天要在哔哩哔哩上花掉两三个小时,那么你大概率抱怨过:首页塞满了不感兴趣的内容、评论区永远有人刷屏、想下载一个视频却找不到靠谱工具、夜间模式下页面刺眼得让人崩溃。Bilibili-Evolved 正是为解决这些痛点而生的浏览器增强脚本,它面向的是愿意折腾、希望把 B 站调教成自己专属形态的技术型用户。本文将以"从安装到二次开发"的完整路线,带你系统掌握这个开源项目的能力边界。

一、先搞清楚一件事:增强脚本到底是什么

浏览器脚本(UserScript)是一段运行在网页上下文中的 JavaScript 程序,由 Tampermonkey、Violentmonkey 这类脚本管理器负责加载和执行。它最大的价值在于:无需修改 B 站任何服务器端代码,就能在本地"改写"页面的样式、逻辑与交互。Bilibili-Evolved 正是建立在这一机制之上,将大量增强能力打包成一个可独立安装的脚本分发。

不过与普通脚本不同,Bilibili-Evolved 的内部并非铁板一块,而是按"内核-功能-扩展"三层进行职责划分:src/core/承载生命周期、缓存、网络请求等公共底座;registry/lib/components/存放一个个可独立启停的功能组件;src/plugins/则提供插件化的扩展钩子。这种分层让功能之间互不干扰,也为你后续按需裁剪或自行扩展留足了空间。

二、十分钟装好并跑起来

安装路径非常直接:先在你的浏览器里装好 Tampermonkey,然后获取 Bilibili-Evolved 的脚本本体,让管理器识别并启用即可。脚本在页面加载时会自动初始化,你不需要手动触发任何东西。

首次使用建议先做一次"存活检查":打开浏览器开发者工具的控制台,输入window.BilibiliEvolved,如果能看到对象而非undefined,说明脚本已经正常挂载。这一步虽然简单,却是后续排查一切问题的基础。

三、认识四个常驻入口,避免在菜单里迷路

脚本启用后,B 站页面右侧会出现一个可收起的悬浮侧边栏,它是你进入所有功能的"总闸门"。侧边栏上聚合了设置、功能管理等快捷入口,日常高频操作几乎都可以从这里一步直达。

与之配套的是三个核心面板,分工明确:

  • 设置面板:所有功能的开关与参数都集中在这里,支持按组件搜索、快速启停,改动即时生效,无需刷新页面。
  • 组件管理面板:负责组件的安装、卸载与升级,是"功能仓库"的管理中心。
  • 关于面板:展示脚本版本号、更新日志,并提供设置导出/导入入口,是备份与迁移配置的必经之地。

建议初次使用的人先花五分钟把三个面板各点一遍,形成"侧边栏进入、设置面板调参、管理面板增删、关于面板备份"的心智模型,后面所有操作都会顺畅很多。

四、核心能力巡览:从顶栏到弹幕的一站式改造

顶栏重构:把导航改造成自己的形状

原版 B 站顶栏在部分用户看来信息密度过高、层级混乱。Bilibili-Evolved 的自定义顶栏组件可以直接替换原版导航,支持调整布局、固定位置、背景模糊与投影等视觉参数。它内部由custom-navbar/模块驱动,按钮的排列、显隐都可以自由编排,是"界面定制"这一需求里最常被提及的能力。

视频下载与弹幕处理:把内容主动权拿回手里

视频下载组件位于registry/lib/components/video/download/,支持多线程拉取、断点续传与格式转换,清晰度选择和批量任务管理也是标配。与之相邻的弹幕组件(video/danmaku/)则提供弹幕过滤、样式定制与导出能力——对于想把精彩弹幕留档或彻底屏蔽剧透的用户来说,这两者几乎是"刚需组合"。

评论区的"净化"与结构化

评论增强模块的思路是"让讨论回归讨论":通过src/components/utils/comment/下的区域管理与 VNode 渲染机制,实现关键词过滤、内容高亮和楼层折叠,刷屏、广告与引战内容可以被自动压制。直播侧还有隐藏礼物特效、弹幕栏尺寸自适应等组件,覆盖了从点播到直播的全场景。

五、组件管理:按需增删,拒绝功能臃肿

脚本默认只启用少量基础组件,其余能力都放在"功能仓库"里等你按需领取。进入组件管理面板,你可以看到已安装组件的完整列表与状态,用不到的功能可以随时卸载,避免不必要的资源占用。

组件的获取方式有三种:从在线功能库直接安装、从本地文件安装、或批量粘贴组件直链。这意味着你既能享受官方维护的组件,也能加载社区或自己构建的版本,扩展路径非常灵活。

六、性能与架构:它在后台替你做了哪些事

理解性能表现,需要先了解几项底层设计:

  • 分层缓存src/core/local-storage.ts实现了一套多层缓存体系,内存、LocalStorage 与 IndexedDB 三级配合,让高频数据读取尽量不走网络,这是"离线可用"体验的地基。
  • 按需加载src/core/lazy-panel.ts负责面板与组件的懒加载,只有真正打开某个功能时才会拉取其代码,显著降低首屏开销;life-cycle.ts则管理组件销毁,及时释放不再需要的资源。
  • 请求与观察的节流src/core/ajax.ts提供超时与重试策略,observer.ts控制 DOM 监听频率,两者共同避免脚本成为页面卡顿的来源。
  • CDN 可配置webpack/cdn/下内置了多种资源分发源,网络环境不佳时可以切换 CDN 改善脚本自身的加载稳定性。

对普通用户而言,这些机制意味着"功能丰富"与"体感流畅"可以兼得;对开发者而言,它们则构成了一个可直接复用的基础设施层。

七、进阶玩法:把想法变成自己的组件

如果你不满足于使用现成功能,Bilibili-Evolved 的插件体系提供了相对低门槛的创作入口。src/plugins/下的api.tshook.tsplugin.ts分别定义了对外接口、事件钩子与插件基类,你可以据此挂载自定义逻辑。

开发一个功能组件的常规流程是:

  1. registry/lib/components/对应分类下新建目录;
  2. 用 TypeScript 编写核心业务逻辑,用 SCSS 定义样式;
  3. 补充 Markdown 格式的使用文档;
  4. 通过组件管理面板的"安装本地文件"功能加载调试。

项目还自带了开发工具链:dev-tools/dev-server/提供本地开发服务器与热更新,dev-tools/pr-check/负责提交前的质量检查,dev-tools/feature-docs/可自动生成功能文档。整套流程跑通后,你的自定义组件既能本地自用,也能以直链形式分享给他人。

八、避坑指南:三类高频问题的排查思路

脚本没有生效

先确认脚本管理器已启用且匹配的站点规则正确,再到控制台执行window.BilibiliEvolved判断脚本是否挂载。若返回undefined,多半是安装源或匹配规则出了问题,重新安装通常即可解决。

某个组件行为异常

优先检查该组件的依赖是否齐全、是否与另一组件冲突。src/core/log.ts提供了分级日志系统,在设置面板开启详细日志后复现问题,往往能在日志里直接定位到出错的模块。

页面明显变卡

打开src/core/performance/提供的组件追踪与性能统计,观察是哪个组件占用了过多时间,再决定是卸载、关闭还是调整其运行频率。

此外,强烈建议定期通过关于面板导出设置存档。B 站页面结构经常变动,脚本更新也频繁,一份可随时回滚的配置备份能让你在升级后快速恢复熟悉的形态。

九、一起共建:从使用者到贡献者

参与项目的方式不止写代码一种。你可以通过提交 Issue 反馈 bug 或提出功能建议,也可以帮助完善docs/目录下的文档,或者参与多语言翻译。想深入代码的话,流程也很标准:克隆仓库、创建功能分支、实现并自测、提交 Pull Request 等待 review。克隆地址为https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved

从技术路线看,这个项目未来的想象空间集中在几个方向:利用机器学习优化内容筛选、基于云存储实现配置跨设备同步、通过更细粒度的模块化降低加载体积,以及在现有基础上继续深化 TypeScript 的类型覆盖。

收尾:给你的三步行动清单

  • 第一周:安装脚本,点亮自定义顶栏与弹幕过滤,把界面调成顺手的形态;
  • 第二周:研究组件管理面板,逐步添加视频下载、评论区净化等组件,并完成一次设置导出备份;
  • 一个月内:浏览src/plugins/registry/lib/components/的源码,试着写一个十几行的自定义小插件,迈出二次开发的第一步。

工具的价值不在于功能列表有多长,而在于它是否真的贴合你的使用习惯。Bilibili-Evolved 给了你完整的改造权限,剩下的,就看你想把 B 站变成什么样子了。

【免费下载链接】Bilibili-Evolved强大的哔哩哔哩增强脚本项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved

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

← 返回列表