Bilibili-Evolved深度实战指南:从零定制你的专属哔哩哔哩增强脚本
Bilibili-Evolved深度实战指南从零定制你的专属哔哩哔哩增强脚本【免费下载链接】Bilibili-Evolved强大的哔哩哔哩增强脚本项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-EvolvedBilibili-Evolved是一款以模块化为核心的哔哩哔哩增强脚本它不预装任何功能而是把下载、弹幕处理、界面改造等能力拆成一个个可独立安装的组件让技术型用户按需拼装出属于自己的B站体验。为什么值得深入研究因为它不只是开箱即用的工具更是一套完整的用户脚本工程范本——TypeScript 编写、webpack 打包、Vue 驱动界面、shadow-root 隔离样式源码里藏着大量可以迁移复用的工程实践。这篇文章将从第一小时上手一路拆解到源码级原理最后带你亲手写一个组件完成一次从使用者到开发者的完整旅程。能力速览五个关键词看懂它凭什么强大在动手之前先用五个关键词建立对项目的整体认知关键词对应能力源码落点按需装配默认零功能组件/插件/样式三种扩展随意安装卸载registry/lib/components/界面重构自定义顶栏、夜间模式、首页改版、隐藏元素等深度样式改造registry/lib/components/style/视频增强多清晰度下载、弹幕过滤与导出、字幕处理、画质切换registry/lib/components/video/动态净化动态首页关键词/类型过滤、直播信息扩充、评论区折叠registry/lib/components/feeds/工程完备生命周期管理、设置读写代理、性能追踪、文档自动生成src/core/、dev-tools/这套分层架构的核心思想是核心稳定、功能游离src/core/只做基础设施所有具体功能都被隔离到registry/中按目录分类新增一个功能基本不影响其他模块。设置面板集中管理组件开关与选项是日常使用频率最高的入口场景化上手技术用户的第一小时假设你刚装好 Tampermonkey 或 Violentmonkey接下来这一小时会经历什么第 0-5 分钟安装与初次见面。从正式版/预览版链接安装脚本后打开任意B站页面左侧边缘会浮出两个入口——功能面板和设置面板。注意一个容易误判的点全新安装的脚本实际上没有任何功能它更像一个空壳运行时这恰恰是它与其他全家桶式脚本最大的设计差异。第 5-30 分钟按需装配。打开设置面板左下角有组件/插件/样式三种管理入口支持三种添加方式批量粘贴多个直链一次性安装、浏览载入本地功能文件、在线打开在线仓库窗口。首次配置建议按这个顺序尝试先装夜间模式registry/lib/components/style/dark-mode/感受主题色全局应用的效果再装自定义顶栏registry/lib/components/style/custom-navbar/把导航重构为你习惯的布局最后装一个视频类组件如弹幕过滤体验功能级定制。第 30-60 分钟理解配置即代码。每个组件的选项都由 TypeScript 元数据声明驱动例如自定义顶栏的globalFixed全局固定、fill主题色填充、blur背景模糊、transparent透明填充等这些选项会统一渲染成设置面板里的控件无需每个组件各自写 UI。组件管理面板是按需装配模式的核心操作台支持批量与在线两种安装路径原理深潜从数据流向看脚本如何在B站页面上运转理解这个项目关键是抓住一条数据流生命周期 → 设置代理 → 组件注册 → 隔离渲染。下面按这条链路逐个拆解。第一环生命周期——代码在什么时机执行src/core/life-cycle.ts定义了四个关键节点它们决定了增强逻辑的启动顺序export enum LifeCycleEventTypes { Start be:start, StyleLoaded be:style-loaded, ComponentsLoaded be:components-loaded, End be:end, }配合headLoaded、contentLoaded、fullyLoaded三个 Promise 封装组件可以精确选择head 就绪后注入样式还是DOM 完全加载后再挂逻辑。对B站这种动态渲染的 SPA 页面src/core/observer.ts提供的 DOM 观察器会在节点变化时回调保证增强功能对异步加载的内容同样生效。第二环设置代理——一次读写处处响应src/core/settings/目录里是整套设置系统proxy.ts用 Proxy 包装设置对象任何组件通过getComponentSettings读取或修改选项时listener.ts会向所有订阅者广播变更。这意味着你在设置面板拨动一个开关正在运行的相关组件会实时响应无需刷新页面。types.ts中Settings接口统一管理components、plugins、userStyles、userComponents等区块为设置导入/导出提供了结构基础。第三环组件注册——元数据驱动一切src/components/component.ts维护全局componentsMap组件通过defineComponentMetadata/defineOptionsMetadata定义在src/components/define.ts声明名称、入口、样式、选项等元数据。注册后由install-feature.ts按需拉取代码实现用到才加载。这也是脚本性能可控的关键未启用的组件不会进入运行时。第四环隔离渲染——不改坏B站原有页面增强脚本最怕两件事污染全局样式、被B站前端框架干扰。项目的解法是src/core/shadow-root/这一整套 shadow DOM 工具ShadowDomEntry负责把组件挂载进隔离的 DOM 子树ShadowRootStyles管理样式注入配合dom-observer.ts处理动态节点。这样自定义顶栏、首页改版等重样式组件无论怎么折腾都不会泄漏影响B站原生页面。进阶实战亲手写一个可安装的本地组件理解了元数据驱动写组件就变成填空式工作。以隐藏动态页侧边卡片类的小功能为例标准骨架如下import { defineComponentMetadata, defineOptionsMetadata } from /components/define const options defineOptionsMetadata({ keyword: { defaultValue: 推广, displayName: 过滤关键词, }, }) export default defineComponentMetadata({ name: my-feed-filter, displayName: 我的动态过滤器, entry: async () { const { myFilter } await import(./my-filter) myFilter() }, options, urlInclude: [https://t.bilibili.com/*], })要点有三entry用动态 import 实现懒加载options的元数据会自动生成设置面板控件urlInclude限定生效页面。开发完成后在组件管理面板选择浏览载入本地.user.js格式的文件即可安装调试。真正的项目里registry/lib/components/feeds/filter/就是一个比这复杂得多的范本——它包含options.ts选项定义、pattern.ts匹配规则、state.ts过滤状态、plugin.ts页面插件、以及多个 Vue 面板组件适合作为深入学习组件内部分层的参考。另外dev-tools/feature-docs/会扫描各组件目录下的index.md自动生成doc/features/features.md文档所以为组件写文档是强制规范而非可选项。调优与避坑可复用的性能技巧与问题清单项目对性能要求极高README 明确给出了最低 8GB 内存、1920x1080 的配置门槛因此沉淀了不少可复用的优化经验性能优化三件套懒加载成瘾所有功能代码都走动态importsrc/core/lazy-panel.ts进一步把设置面板等重量级 UI 推迟到真正打开时才渲染观察器精准化observer.ts只监听必要的节点类型与子树避免全页面高频 MutationObserver 造成掉帧生命周期对齐样式类功能挂在headLoaded逻辑类挂contentLoaded宁可稍晚启动也不阻塞首屏。常见问题清单组件装了没效果先查urlInclude是否覆盖当前页面再确认是否被其他组件冲突如直播信息扩充与动态侧边卡片过滤的已知冲突页面卡顿优先检查是否同时启用了多个重样式组件夜间模式与首页改版都属于高开销模块调试入口src/core/utils/log.ts提供分级日志配合src/core/performance/下的component-trace.ts、plugin-trace.ts可以精确追踪每个组件/插件的耗时。生态与参与从使用者到贡献者的三条路径如果你想更进一步项目提供了清晰的参与通道贡献组件在registry/lib/components/对应分类下新建目录实现逻辑、补充index.md文档提交后由dev-tools/pr-check/自动检查元数据与文档是否合规本地二次开发克隆仓库git clone https://gitcode.com/gh_mirrors/bi/Bilibili-Evolveddev-tools/dev-server/提供带热更新的本地开发服务器registry/webpack/区分了核心、组件、插件三类构建入口翻译与文档src/components/i18n/承载多语言支持文案与文档同样是重要的贡献方向。收尾把增强脚本当成工程来读回到开头的问题——为什么技术用户值得深入研究 Bilibili-Evolved因为它用一套完整的工程化实践回答了一个常见难题如何在别人家的复杂网页上安全、高效、可维护地注入自己的改造。分层架构、元数据驱动、shadow DOM 隔离、按需加载这些概念每一个单独拿出来都能写成一篇文章而这里它们被组合成了一个可运行、可扩展的真实项目。下一步行动建议很直接先装好脚本用一周时间按需装配你的组件组合再挑一个你最常用的组件读它的源码最后照着本文的骨架写一个自己的组件。当你能在设置面板里看到自己定义的那个开关时你就真正读懂了增强脚本这三个字。关于面板是版本管理与配置备份的枢纽设置导入/导出功能值得养成定期使用的习惯【免费下载链接】Bilibili-Evolved强大的哔哩哔哩增强脚本项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

电视盒子刷机Armbian总翻车?这份6关适配通关手记帮你省下整个周末

电视盒子刷机Armbian总翻车?这份6关适配通关手记帮你省下整个周末

电视盒子刷机Armbian总翻车?这份6关适配通关手记帮你省下整个周末 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905…

2026/10/10 1:30:16 阅读更多 →
Bilibili-Evolved 深度体验:一个哔哩哔哩增强脚本,把B站变成你的私人定制版

Bilibili-Evolved 深度体验:一个哔哩哔哩增强脚本,把B站变成你的私人定制版

Bilibili-Evolved 深度体验:一个哔哩哔哩增强脚本,把B站变成你的私人定制版 【免费下载链接】Bilibili-Evolved 强大的哔哩哔哩增强脚本 项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved 深夜十一点,我瘫在沙发上想刷会…

2026/10/14 11:37:55 阅读更多 →
MySQL实战指南:从指令记忆到高效数据操作与性能优化

MySQL实战指南:从指令记忆到高效数据操作与性能优化

1. 从“指令大全”到“肌肉记忆”:为什么你需要一份不一样的MySQL指南 每次看到“MySQL指令大全”这样的标题,我都能回想起自己刚入行时,面对搜索引擎里海量、零散、甚至相互矛盾的SQL语句时的那种迷茫。下载一个PDF,收藏一个网页…

2026/9/24 5:12:11 阅读更多 →

最新新闻

FCMADDPG多智能体编队控制:从集中训练到分布式执行的工程实践

FCMADDPG多智能体编队控制:从集中训练到分布式执行的工程实践

简介:针对无人机、自动驾驶等场景中的多智能体协同编队问题,这套代码基于MADDPG算法(多智能体深度确定性策略梯度)构建了一套可运行的深度强化学习实现方案。资源适用于学习多智能体强化学习与编队控制的研究者、工程师&#xff0…

2026/10/14 11:40:49 阅读更多 →
原生JS拖拽列表实战:面向对象封装与性能优化全解析

原生JS拖拽列表实战:面向对象封装与性能优化全解析

写原生JS的拖拽列表,绕不过一个老话题——按住鼠标左右拖动。这个需求看着简单,真写起来却有不少讲究:事件绑在哪、位移怎么算、边界卡在哪、性能怎么保。今天我把一个用面向对象思路封装好的原生JS案例完整拆开,从事件模型到边界…

2026/10/14 11:40:49 阅读更多 →
Superpowers:开源实时协作游戏开发平台,用TypeScript在浏览器中打造2D/3D游戏

Superpowers:开源实时协作游戏开发平台,用TypeScript在浏览器中打造2D/3D游戏

1. Superpowers 是什么,它到底解决了什么问题我最早听到“Superpowers”这个名字,是在一个游戏开发社群的聊天记录里。有人甩了一句“我们要不要试试用Superpowers做个小游戏”,后面跟着一串链接。当时我以为是某种营销噱头,还专门…

2026/10/14 11:40:49 阅读更多 →
房价预测BP神经网络实现:从Excel数据到可运行回归模型

房价预测BP神经网络实现:从Excel数据到可运行回归模型

简介:这份资源面向机器学习入门者与需要完成回归预测实战的开发者,围绕经典波士顿房价数据集,用Python从零实现BP神经网络完成房价预测。压缩包共2个文件,含1个py脚本与1个csv数据文件,整体约8KB,其中csv提…

2026/10/14 11:40:49 阅读更多 →
UE5风格化体积云实战:密度场、Beer-Lambert与云隙光柱一体化实现

UE5风格化体积云实战:密度场、Beer-Lambert与云隙光柱一体化实现

做风格化体积云,最怕的不是数学公式多,而是把写实那套物理参数全数堆上去之后,云既不风格化,运行还卡到没法看。这套链路我在 UE 5.7.4 工程里从密度场、Beer–Lambert 透射一直做到实时雾与云隙光柱,核心目标很简单&a…

2026/10/14 11:40:49 阅读更多 →
SpringBoot+Vue高校疫情防控管理系统毕设项目完整设计与实现

SpringBoot+Vue高校疫情防控管理系统毕设项目完整设计与实现

1. 项目定位:这套系统到底解决什么问题总有人拿着“SpringBootVue 高校疫情防控web系统管理平台源码【适合毕设/课设/学习】JavaMySQL”这个标题来问我,它到底能不能直接拿来当毕业设计、能不能跑通、要不要改代码。先说我的结论:这套系统选型…

2026/10/14 11:39:48 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

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

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

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

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

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

2026/10/14 7:53:34 阅读更多 →