Bili Sync:
一款专为 NAS 用户编写的哔哩哔哩同步工具,自动下载哔哩哔哩收藏内容,格式兼容 Emby、Jellyfin 等媒体服务器,可直接添加为媒体库自动识别。

功能与路线图:
- • 使用用户填写的凭据认证,并在必要时自动刷新
- • 支持收藏夹与视频列表/视频合集的下载
- • 自动选择用户设置范围内最优的视频和音频流,并在下载完成后使用 FFmpeg 合并
- • 使用 Tokio 与 Reqwest,对视频、视频分页进行异步并发下载
- • 使用媒体服务器支持的文件命名,方便一键作为媒体库导入
- • 当前轮次下载失败会在下一轮下载时重试,失败次数过多自动丢弃
- • 使用数据库保存媒体信息,避免对同个视频的多次请求
- • 打印日志,并在请求出现风控时自动终止,等待下一轮执行
- • 提供多平台的二进制可执行文件,为 Linux 平台提供了立即可用的 Docker 镜像
- • 支持对“稍后再看”内视频的自动扫描与下载
- • 支持对 UP 主投稿视频的自动扫描与下载
- • 支持限制任务的并行度和接口请求频率
- • 支持单个文件的分块并行下载
- • 支持使用 Web UI 配置,查看并管理视频、视频源
准备
这里先提前说一下怎么获取 bilibili 认证信息,分别需要获取:SESSDATA,bili_jct,buvid3,dedeuserid 和 ac_time_value 这 5 个参数。
浏览器使用无痕打开 bilibili 首页

登录账号,按 F12 进入开发者工具

在控制台输入下面命令,获取 ac_time_value 的值
window.localStorage.ac_time_value

点击顶部切换,应用程序 –> Cookie

获取 bili_jct,buvid3,dedeuserid 和 SESSDATA 的值

安装
Docker Compose
services:
bili-sync:
image: amtoaer/bili-sync-rs:latest
container_name: bili-sync
user: 0:0
ports:
- 12345:12345
volumes:
- /vol1/1000/docker/bili-sync/config:/app/.config/bili-sync
- /vol1/1000/docker/bili-sync/bilibili:/bilibili
restart: unless-stopped
参数说明
:::
user:用户权限设置(根据实际情况设置,不设置默认 root)
/app/.config/bili-sync(路径):存储程序配置的目录
/app/.config/bili-sync/upper_face(路径,可选):存储演员头像
/bilibili(路径):创建一个存放视频的目录
:::
TIP:
初次启动需要一些时间,提示 CONFIG 的报错也是正常现象
点击启动后,需要先查看日志查看信息,生成的 token 等等需要用到

提示开始运行管理页就说明已经成功启动了

使用
浏览器中输入 http://NAS的IP:12345
就能看到界面

右下角应该会看到一些提示警告弹窗,不用担心后面会处理

来到设置,输入日志获取的 Token 进行认证

认证成功就可以看到更多信息了,默认检测循环时间为 20 分钟(所有设置默认就行)

切换到“B 站认证”,按要求填写之前获取的参数

点击“我创建的收藏夹”,可以订阅默认收藏夹

保存路径选择前面映射的 /bilibili ,后面部分可以按个人喜好设置(订阅比较少的,可以不用这么多层文件夹分类)

可以去 Bilibili 创建一个新的收藏夹,专门订阅下载使用

可以订阅关注的合集

可以订阅关注的 up 主

视频源这里可以看到订阅的情况(默认稍后再看是关闭的,有需要的可以自行打开)

TIP:
如果提示 database is locked,大概率是权限有问题

日志查看当前运行任务情况,定时就会进行下载订阅的视频

视频这里已经是全部下载完成的了

来到仪表盘,可以看到整体运行状况

映射的文件夹里面,可以看到已经下载好视频了

视频对应的信息都是有刮削的

将文件夹设置为媒体库,支持 nfo 刮削格式的媒体服务器应该都可以识别的(内容类型为电影)

挺不错的,不过飞牛的海报是竖屏不太合适

Emby 这种海报是横屏看起来效果会好很多

总结
如果你平常经常使用哔哩哔哩,那么这款应用绝对值得你去部署。你只需将其订阅,应用便会定时扫描并进行下载,这样可以有效避免因某些视频下架而无法观看的情况。
目前新版已经有 UI 界面,可以说操作起来根据方便了,不过获取哔哩哔哩参数也是一个较为麻烦的问题,尽管 cookie 的有效期相对较长,但仍然比较繁琐。
综合推荐:⭐⭐⭐⭐⭐(非常推荐)
使用体验:⭐⭐⭐⭐(基本满意了)
部署难易:⭐⭐(简单)