尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

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

Bilibili-Evolved 深度指南:从零搭建你的哔哩哔哩增强脚本工作台

Bilibili-Evolved 深度指南:从零搭建你的哔哩哔哩增强脚本工作台 Bilibili-Evolved 深度指南从零搭建你的哔哩哔哩增强脚本工作台【免费下载链接】Bilibili-Evolved强大的哔哩哔哩增强脚本项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved如果你每天都要在哔哩哔哩上花掉一两个小时又恰好是那种看个视频也要把界面调教到自己满意为止的技术型用户那么Bilibili-Evolved这个名字你一定不陌生。这是一款开源的哔哩哔哩增强脚本目标人群是中级开发者与重度用户它不满足于去个广告、改个主题这种小打小闹而是提供了一套组件化、可编程、可离线运行的完整增强方案。本文将从安装、日常使用、深度定制到二次开发带你完整走一遍这个脚本的工作方式。一、为什么说它和你见过的脚本不一样大多数用户脚本是装完就完事的——作者写好什么你就用什么。Bilibili-Evolved 的设计哲学恰恰相反它默认不预装任何功能安装完成后你拿到的是一张白纸所有能力都通过组件按需添加。这种思路直接反映在项目结构上src/components/—— 内置组件的核心逻辑与设置系统registry/lib/components/—— 可独立安装的功能组件仓库按feeds、video、live、style、touch、utils分类src/plugins/—— 插件机制提供数据共享与事件钩子src/core/—— 生命周期、设置持久化、DOM 观察器等基础设施换句话说这个脚本更像是一个运行在浏览器里的功能平台组件和插件是平台上可插拔的应用。二、第一步安装与初始化步骤安装本身不复杂浏览器先装好 Tampermonkey 或 Violentmonkey然后从项目的正式版或预览版入口安装脚本即可。有两点值得提前知道新安装的脚本不会自动激活任何功能需要去设置面板手动添加脚本对性能有一定要求README 里给出了明确的最低配置如 8GB 内存、1080P 分辨率老设备建议先装一个轻量组件跑几天感受一下。装好后刷新 B 站任意页面左侧会出现一个侧边栏入口同时承载功能面板与设置面板两个入口。三、组件体系像搭积木一样搭建你的 B 站这是整个脚本最核心的使用心智。打开设置面板进入左下角的组件 / 插件 / 样式管理你会看到四种添加方式批量粘贴多行功能直链一次性安装多个组件浏览从本地文件载入组件在线打开在线功能仓库浏览和安装链接粘贴单个直链安装组件按页面场景分类存放。以registry/lib/components/为例实际可用的能力包括动态流feeds复制动态链接、按关键词或类型过滤动态、强制固定侧栏、展开长内容、动态分组筛选视频video下载视频、弹幕过滤与导出、默认清晰度与播放位置、封面替换、字幕管理直播live直播信息扩充、礼物全屏隐藏、水印移除、直播间屏蔽词外观style夜间模式、自定义顶栏、首页改版fresh / minimal 两套主题、滚动条美化触屏touch双击控制、手势操作、迷你播放器工具utils图片导出、自动点赞、黑名单、快捷键系统keymap建议新用户遵循渐进式启用原则先从夜间模式 自定义顶栏 动态过滤器这三个高频组件起步跑稳定后再逐步叠加避免一次装太多导致排查困难。四、日常效率三个真实场景的实战配置场景一刷动态时屏蔽信息噪音动态首页的信息流质量决定了你每天刷 B 站的心情。组合动态过滤器按类型/关键词过滤与动态分组过滤按关注分组筛选再配合强制固定动态侧栏可以得到一个干净、稳定、无打扰的动态页。细节上展开动态内容和展开动态标题能免去反复点击展开全文的动作。场景二看视频时把播放器调教到顺手视频页是组件最密集的地方。常用的组合拳包括下载视频支持多清晰度与批量任务实现位于registry/lib/components/video/download/默认清晰度省去每次手动切换弹幕相关组件过滤广告弹幕、自定义弹幕样式、导出弹幕播放器置顶或播放器阴影让播放器在滚动时保持可见场景三直播场景去掉干扰项在直播间移除水印、隐藏礼物全屏动画、礼物盒等组件能把画面还给你直播信息扩充则解决了动态页正在直播板块只能显示 10 个直播间的问题。五、深度定制配置文件与设置管理设置面板能做什么设置面板左侧是分类导航右侧是组件的详细选项。以自定义顶栏为例它替换了 B 站原生顶栏提供全局固定、主题色填充、背景模糊等开关并支持用 Vue 组件扩展入口项——这部分实现位于src/components/style/custom-navbar/。设置迁移与备份关于面板集中了版本信息、设置导入/导出功能。这意味着你的整套组件配置可以导出为文件备份换设备时一键恢复。老用户还有一条专属通道如果你用过 v1 版本v1 设置迁移组件会自动把旧设置对应的组件下载安装迁移成本几乎为零。六、性能调优这个脚本真的重吗Bilibili-Evolved 确实不轻但它的性能设计是有讲究的理解之后你可以针对性地调优生命周期分阶段加载src/core/life-cycle.ts提供了headLoaded、contentLoaded、fullyLoaded三个时机钩子配合LoadingMode.Delay / Race两种加载策略把组件执行延后到页面空闲阶段组件懒加载src/components/component.ts中每个组件通过entry函数动态 import 自身依赖未开启的组件不会执行任何代码性能追踪开启开发者模式后src/core/performance/会输出组件加载耗时统计你可以据此找出拖慢启动的重组件DOM 观察器src/core/observer.ts统一管理 MutationObserver避免多个组件各自监听导致性能浪费实际调优建议优先检查动态过滤器、弹幕类、首页改版这类 DOM 密集型组件它们通常是首屏卡顿的主要来源。七、开发者进阶写一个自己的组件脚本提供了完整的二次开发接口核心是src/components/define.ts中的defineComponentMetadata。看一个真实的极简组件registry/lib/components/feeds/copy-link/index.tsimport { defineComponentMetadata } from /components/define import { FeedsCard } from /components/feeds/api import { feedsUrls } from /core/utils/urls const entry async () { const { forEachFeedsCard, addMenuItem } await import(/components/feeds/api) const addCopyLinkButton (card: FeedsCard) { addMenuItem(card, { className: copy-link, text: 复制链接, action: async () { await navigator.clipboard.writeText(https://t.bilibili.com/${card.id}) }, }) } forEachFeedsCard({ added: addCopyLinkButton }) } export const component defineComponentMetadata({ name: copyFeedsLink, displayName: 复制动态链接, entry, urlInclude: feedsUrls, tags: [componentsTags.feeds, componentsTags.utils], })这段代码的作用在动态卡片上添加复制链接菜单项。注意entry是异步函数内部用动态import拉取依赖这正是脚本懒加载机制的关键。如果你想让多个组件之间共享状态则要用到插件机制src/plugins/plugin.ts插件通过setup参数拿到addData、addHook、registerData等接口完成数据注册与事件注入而组件可以声明plugin字段附带自己的插件。本地开发环境同样齐备dev-tools/dev-server/提供热更新开发服务器dev-tools/pr-check/提供 PR 检查规则dev-tools/feature-docs/能自动生成功能文档。想要二次开发可以这样起步git clone https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved pnpm install pnpm run build-core # 构建核心脚本 pnpm run build-features # 构建全部组件八、常见问题排查清单问题 1装完脚本页面上什么变化都没有。这大概率是正常的——脚本默认不预装组件。去设置面板的组件管理里安装你需要的功能即可。问题 2某个组件不生效。先确认组件的urlInclude是否覆盖当前页面很多组件只在特定页面运行再检查设置面板中该组件是否开启最后看浏览器控制台有没有来自脚本的报错日志。问题 3页面明显变卡。按第六节的思路开启开发者模式查看组件加载耗时逐个关闭重组件定位瓶颈。问题 4想回退旧版本。项目文档提供了旧版本回退指南doc/rollback.md按步骤操作即可注意新版本发布后旧版本不再提供技术支持。问题 5担心隐私。项目的隐私声明写得很明确所有数据计算都在本地完成不收集任何统计数据。但注意第三方来源的组件/插件对数据有完整访问权限安装非官方组件前请自行甄别。九、把脚本用好的 4 条最佳实践渐进式启用从夜间模式、自定义顶栏、动态过滤器三个组件开始跑顺了再逐步叠加避免一步到位造成排查困难。定期导出设置利用关于面板的导出功能备份你的整套配置换设备或重装浏览器时能秒级恢复。关注组件而不是脚本本体脚本更新频率高但真正影响你体验的是你安装的那几十个组件重点跟进它们的更新说明即可。能自己写的就别等组件开发门槛比想象中低一个几十行的defineComponentMetadata就能解决一个具体痛点官方文档doc/features/features.md就是最好的参考手册。Bilibili-Evolved 的价值不在于功能多而在于它把调教 B 站这件事变成了一套可持续、可扩展、可编程的工程化流程。对技术型用户来说它不只是脚本更像是一块可以不断往上盖楼的地基。【免费下载链接】Bilibili-Evolved强大的哔哩哔哩增强脚本项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表