Skip to content

wangdaodaodao/TabulaBili

Repository files navigation

TabulaBili (初见哔哩)

在日常浏览 B 站时,我们往往会陷入一个两难的困境:

  1. 不登录账号:虽然能避免算法推荐的信息茧房,但页面频繁弹出烦人的登录框、限制页面滚动,且最高只能观看 480P/720P 画质
  2. 登录账号:能看 1080P 高清和参与评论点赞,但首页推荐流会迅速被算法捕获,反复推送同质化内容,视野日益狭窄。

TabulaBili 正是为解决这一痛点而生。它源自哲学概念 Tabula Rasa(白板说/初生无瑕),让你既能享受登录状态下的完整特权,又能让首页推荐流永远保持“人生若只如初见”的纯净状态。减少基于账号登录态和浏览历史的个性化推荐,让首页内容变得更泛化、更随机、更像公共热门流。


核心特性

  • 画质无损与功能完整:全局保持你的 B 站账号登录状态,完美享受 1080P+ 高清画质、发弹幕、评论、点赞与收藏功能。
  • 彻底打破信息茧房:每次刷新首页,推荐流强制重置为大盘纯净热门流,让你跳出算法算计,探索更广阔的视频世界。
  • 零性能与内存损耗:采用 Chrome MV3 底层网络规则拦截,无需在页面注入复杂的 DOM 操作脚本,没有任何常驻后台进程。
  • Apple 级美学控制面板:支持深色模式自适应(Dark Mode)、带有平滑微动画的独立控制弹窗,支持一键开闭与页面智能自动刷新。

技术原理

B 站首页的推荐流是通过前端异步请求后端接口拉取数据的(核心接口为 api.bilibili.com/x/web-interface/wbi/index/top/feed/rcmd 等)。

TabulaBili 利用 Chrome 扩展 Manifest V3 的 declarativeNetRequest (DNR) 机制,在浏览器底层网络层进行“外科手术式”的请求头清洗:

[浏览器 B 站首页发起推荐请求] 
              │
              ▼
[TabulaBili 扩展底层拦截 (DNR)] ──> 自动剥离请求头中的 Cookie (SESSDATA / buvid 等)
              │
              ▼
[B 站后端推荐算法服务器] ─────────> 识别为“全新到访的匿名访客”,下发大盘默认热门流
              │
              ▼
[你的浏览器首页] ────────────────> 呈现无个性化痕迹的纯净推荐流
  • 安全与隔离机制:拦截规则仅针对首页 feed 接口生效。当你点击进入视频播放页 (/video/) 或用户中心时,视频流请求 (playurl) 及其他所有 API 均不受拦截,正常携带 Cookie,因此画质与账号特权丝毫不受影响。

安装与使用指南

1. 本地安装 (开发者模式)

  1. 打开 Chrome 浏览器,在地址栏输入 chrome://extensions/ 进入扩展管理页面。
  2. 开启页面右上角的 “开发者模式” (Developer mode)。
  3. 点击左上角的 “加载已解压的扩展程序” (Load unpacked),选择本扩展所在的目录(即 purebili 文件夹)。

2. 使用方法

  1. 在浏览器右上角的扩展工具栏中找到 TabulaBili 并将其固定(Pin)。
  2. 点击扩展图标打开精美的设置面板:
    • 开启模式 (ACTIVE):开启纯净访客模式,立即屏蔽个性化推荐。
    • 关闭模式 (OFF):一键瞬间恢复原版 B 站个性化推荐。
  3. 智能刷新:在切换开关时,如果扩展检测到你当前正在浏览 B 站页面,会自动帮你重载页面以让新模式立即生效。

常见问题 (FAQ)

Q1:看久了之后,还会受算法影响吗?

完全不会。 因为扩展在底层移除了推荐接口的整个 Cookie 请求头,无论你在浏览器本地看多久、存了多少追踪指纹,后端推荐算法在处理 feed 请求时都无法读取。对算法而言,你每一次刷新首页,都是一次“失忆”式的全新访问。

Q2:会影响我的历史播放记录和点赞收藏吗?

没有任何影响。 扩展只处理首页推荐流的请求,你在播放页的观看进度、一键三连、稍后再看等行为都会正常保存在你的 B 站账号下。

Q3:为什么不采用前端拦截 Fetch/Ajax 的方式?

前端拦截需要向每个页面注入 JavaScript 脚本,不仅会增加页面加载开销,还容易与 B 站复杂的 Wbi 签名算法冲突。采用底层的 DNR 规则既无需维护前端脚本,又具备极高的运行效率和稳定性。


目录结构

purebili/
├── manifest.json   # 扩展配置文件声明
├── rules.json      # DNR 网络请求头拦截规则集
├── popup.html      # 精美的弹窗控制面板 UI
├── popup.js        # 弹窗逻辑与规则动态切换脚本
└── README.md       # 项目说明文档

📄 开源与许可声明 (License & Open Source)

本项目采用 MIT 开源许可证 (MIT License)

没有上架应用商店的计划,如果有这个行为,最好能保留博客信息。

我们秉持极度开放与自由的开源精神:

  • 自由开发与分发:任何人都可以自由地获取源码、修改功能逻辑、定制 UI 界面,甚至打包分发或用于商业项目(其他的可以随便开发)。
  • 署名要求:仅需在二次开发或分发时保留原作者版权及许可声明。
  • 免责声明:本扩展按原样提供,作者不对任何因使用或修改本扩展产生的意外损失或账号问题承担连带责任。

🌐 联系与关注作者


Author: wangdaodao | Version: 1.0 | License: MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors