Bilibili追番追剧页面配置
前言
在博客中展示自己的追番追剧记录是一件很有趣的事情。本文将介绍如何使用 hexo-bilibili-bangumi 插件,将 Bilibili 的追番追剧数据自动同步到 Hexo 博客中,并自定义样式使其与 Butterfly 主题风格统一。
一、安装插件
在博客根目录执行:
1 | npm install hexo-bilibili-bangumi --save |
插件依赖 hexo-renderer-pug,如果未安装需先执行:
1 | npm install hexo-renderer-pug --save |
二、获取 Bilibili SESSDATA
插件需要 Bilibili 的 SESSDATA cookie 来获取观看进度数据。获取方式:
- 在浏览器中登录 bilibili.com
- 按
F12打开开发者工具 - 切换到 Application(应用程序)标签页
- 左侧找到 Cookies >
https://www.bilibili.com - 在右侧列表中找到
SESSDATA,复制它的 Value
注意:SESSDATA 会过期(通常几个月),过期后需要重新获取。没有 SESSDATA 插件也能工作,只是不会显示观看进度条。
三、站点配置
在 _config.yml(站点根目录,不是主题配置文件)中添加以下配置:
1 | # hexo-bilibili-bangumi 追番/追剧配置 |
配置项说明
| 配置项 | 说明 |
|---|---|
source |
数据源,bili 表示 Bilibili |
vmid |
Bilibili 用户 UID(从个人空间 URL 中获取) |
path |
生成页面的路径 |
show |
默认显示的标签页:0=想看,1=在看,2=看过 |
lazyload |
封面图懒加载 |
webp |
封面图使用 webp 格式(更小体积) |
progress |
显示观看进度 |
progressBar |
显示进度条 |
order |
排序方式:-score 按评分降序,latest 按更新时间 |
前置条件
需要在 Bilibili 的隐私设置中将追番追剧列表设为公开,否则 API 返回空数据。
四、导航菜单配置
在 _config.butterfly.yml 中添加追番追剧的导航入口:
1 | menu: |
五、样式美化
插件默认样式比较朴素,可以通过自定义 CSS 覆盖来适配博客的整体风格。在 source/css/custom.css 中添加以下样式:
1 | /* 追番/追剧页面样式覆盖 */ |
以上样式使用了渐变色标签页、圆角卡片、悬浮上移效果和暗色模式适配,可根据自己的博客风格调整颜色和圆角大小。
六、GitHub Actions 配置
6.1 添加仓库 Secret
- 进入 GitHub 仓库的 Settings > Secrets and variables > Actions
- 点击 New repository secret
- 添加:
- Name:
BILIBILI_SESSDATA - Secret: 第二步中复制的
SESSDATA值
- Name:
6.2 修改 Workflow 文件
在 .github/workflows/deploy.yml 中,在 Build Hexo 步骤之前添加数据拉取步骤:
1 | - name: Update bangumi data |
continue-on-error: true 的作用是:当 Bilibili API 暂时不可用或触发限流时,构建不会失败,而是使用上次缓存的数据。
七、使用方式
7.1 本地开发
1 | # 拉取追番数据 |
访问 http://localhost:4000/bangumis/ 和 http://localhost:4000/cinemas/ 查看效果。
7.2 删除数据
1 | npx hexo bangumi -d # 删除追番数据 |
7.3 补充手动条目
可以在 source/_data/extra_bangumis.json 中添加 Bilibili 上没有的番剧,格式与自动拉取的数据一致。
八、常见问题
8.1 页面显示为空
- 确认 Bilibili 追番追剧列表已设为公开
- 检查
vmid是否正确(从个人空间 URLspace.bilibili.com/数字中获取) - 确认
source设置为bili
8.2 进度条不显示
- 需要提供有效的
SESSDATAcookie SESSDATA可能已过期,重新获取并更新 GitHub Secret
8.3 页面路径 404
- 检查
path配置是否为index.html而非index.md - 执行
npx hexo clean清理缓存后重新生成
总结
通过 hexo-bilibili-bangumi 插件,我们可以轻松将 Bilibili 追番追剧数据集成到 Hexo 博客中:
- 插件安装:
npm install hexo-bilibili-bangumi --save - 站点配置:在
_config.yml中添加bangumi和cinema配置 - 导航菜单:在 Butterfly 主题配置中添加入口
- 样式美化:通过自定义 CSS 适配博客风格
- 自动更新:通过 GitHub Actions 在每次部署时自动拉取最新数据
这样每次推送代码后,追番追剧页面都会自动更新,无需手动维护。

