星哥带你玩飞牛NAS-20:把B站收藏同步下载到NAS,打造家庭教育、娱乐分中心

在大多数人的印象里,NAS 似乎就是一个“家庭文件柜”:备份照片、存点电影、同步资料……功能不算少,但也谈不上惊艳。

如果你是一个B站的重度爱好者,您一定会把 B 站上那些优质学习资源、视频、娱乐收藏起来。

但是如果能把收藏的视频,自动下载到NAS中,让孩子、家人随时随地学习,你可能会重新认识这个“小盒子”。

今天,我们就来拆解一种非常实用、可落地的 NAS 新玩法:用 NAS 自动采集 B 站学习资源 → 分类整理 → 使用Jellyfin(其他播放器也行) → 打造家庭教育中心。

打开网易新闻 查看精彩图片

为什么要把 B 站资源搬到 NAS?

B 站的学习内容非常丰富,从科普、编程、数学,到艺术、历史、语言学习,应有尽有。但它也有几个痛点:

  • 资源分散:收藏夹越多越乱,想找某个视频经常翻半天。

  • 容易“被打断”:学习视频旁边就是娱乐内容,孩子很容易跑偏。

  • 无法统一管理:家长难以为孩子定制学习内容。

  • 网络依赖强:没有网络就无法观看。

而 NAS 的优势刚好能补上这些短板:

  • • 本地存储、随时访问

  • • 分类清晰、可控可管

  • • 自动化脚本可实现“无人值守采集”

这就是为什么越来越多家庭开始用 NAS 打造“家庭教育中心”。

Bili‑Sync 是什么?一句话概括

Bili‑Sync 是一款用于自动同步 B 站收藏夹、稍后再看、UP 主投稿等内容到本地或 NAS 的工具。它的核心目标是:让你不再手动下载 B 站视频,而是让 NAS 自动帮你“搬运 + 分类 + 更新”。

项目官方主页地址:bili-sync.allwens.work

bili-sync 是一款专为 NAS 用户编写的哔哩哔哩同步工具。它的基本的工作原理是使用用户填写的凭据定期扫描视频合集、收藏夹等,获取到本地未下载过的内容并保存到本地,维持本地视频库与哔哩哔哩网站的同步。

下载的内容包括视频、封面、弹幕、标签与简介信息等,这些文件整体保持与 Emby、Jellyfin 等媒体服务器软件兼容的文件布局,使得目的文件夹可以直接被作为媒体库添加到这些软件中,无需干预自动识别。

如何开始,准备工作

如果你想快速搭建这套系统,可以参考以下步骤:

1. 准备设备

  • • 一台 NAS(飞牛NAS、群晖、威联通、都可以)

  • • 家庭网络环境

安装Bili‑Sync 1.在NAS使用 Docker Compose 部署

Linux/amd64 与 Linux/arm64 两个平台可直接使用 Docker 或 Docker Compose 运行,此处以 Compose 为例:

services:
bili-sync-rs:
# 不推荐使用 latest 这种模糊的 tag,最好直接指明版本号
image: amtoaer/bili-sync-rs:latest
restart: unless-stopped
network_mode: bridge
# 该选项请仅在日志终端支持彩色输出时启用,否则日志中可能会出现乱码
tty: true
# 非必需设置项,推荐设置为宿主机用户的 uid 及 gid (`$uid:$gid`)
# 可以执行 `id ${user}` 获取 `user` 用户的 uid 及 gid
# 程序下载的所有文件权限将与此处的用户保持一致,不设置默认为 Root
user: 1000:1000
hostname: bili-sync-rs
container_name: bili-sync-rs
# 程序默认绑定 0.0.0.0:12345 运行 http 服务
# 可同时修改 compose 文件与 config.toml 变更服务运行的端口
ports:
- 12345:12345
volumes:
- ${你希望存储程序配置的目录}:/app/.config/bili-sync
# metadata/people 正确挂载才能在 Emby 或 Jellyfin 中显示 UP 主头像
# 右边的目标目录不固定,只需要确保目标目录与 bili-sync 中填写的“UP 主头像保存路径”保持一致即可
- ${Emby 或 Jellyfin 配置下的 metadata/people 目录}:/app/.config/bili-sync/upper_face
# 接下来可以挂载一系列用于保存视频的目录,接着在 bili-sync 中配置将视频下载到这些目录即可
# 例如:
# - /home/amtoaer/HDDs/Videos/Bilibilis/:/home/amtoaer/HDDs/Videos/Bilibilis/
# 如果你使用的是群晖系统,请移除最后的 logging 配置,否则会导致日志不显示
logging:
driver: "local"

使用该 compose 文件,执行docker compose up -d即可运行。

星哥正式部署

2.新建文件夹

NAS的路径 
/vol1/1000/bili-sync-file 【存放视频】
/vol1/1000/Docker/bili-sync 【存放配置文件】
打开网易新闻 查看精彩图片

填入

services:
bili-sync-rs:
# 不推荐使用 latest 这种模糊的 tag,最好直接指明版本号
image: amtoaer/bili-sync-rs:latest
restart: unless-stopped
network_mode: bridge
# 该选项请仅在日志终端支持彩色输出时启用,否则日志中可能会出现乱码
tty: true
# 非必需设置项,推荐设置为宿主机用户的 uid 及 gid (`$uid:$gid`)
# 可以执行 `id ${user}` 获取 `user` 用户的 uid 及 gid
# 程序下载的所有文件权限将与此处的用户保持一致,不设置默认为 Root
user: 1000:1000
hostname: bili-sync-rs
container_name: bili-sync-rs
# 程序默认绑定 0.0.0.0:12345 运行 http 服务
# 可同时修改 compose 文件与 config.toml 变更服务运行的端口
ports:
- 12345:12345
volumes:
- /vol1/1000/Docker/bili-sync/config:/app/.config/bili-sync
# metadata/people 正确挂载才能在 Emby 或 Jellyfin 中显示 UP 主头像
# 右边的目标目录不固定,只需要确保目标目录与 bili-sync 中填写的“UP 主头像保存路径”保持一致即可
- /vol1/1000/Docker/bili-sync/upper_face:/app/.config/bili-sync/upper_face
# 接下来可以挂载一系列用于保存视频的目录,接着在 bili-sync 中配置将视频下载到这些目录即可
# 例如:
- /vol1/1000/bili-sync-file/:/downloads
# 如果你使用的是群晖系统,请移除最后的 logging 配置,否则会导致日志不显示
logging:
driver: "local"
打开网易新闻 查看精彩图片

Releases页面下载Bili‑Sync

程序为各个平台提供了预构建的二进制文件,并且打包了Linux/amd64Linux/arm64两个平台的 Docker 镜像。用户可以自行选择使用哪种方式运行。

在程序发布页 https://github.com/amtoaer/bili-sync/releases 选择最新版本中对应机器架构的压缩包,解压后会获取一个名为bili-sync-rs的可执行文件,直接双击执行。

打开网易新闻 查看精彩图片

如果你使用这种方式运行,请确保 FFmpeg 已被正确安装且位于 PATH 中,可直接通过ffmpeg命令访问。

星哥以windows系统演示,如下:

打开网易新闻 查看精彩图片

获取B站信息 视频名称

  • video_name:指定下载的视频文件的命名格式,支持使用模板,如{{title}}表示视频标题、{{bvid}}表示视频编号、{{upper_name}}表示 up 主名称、{{upper_mid}}表示 up 主 id 等。

  • page_name:在多 P 视频中,用于指定每个分 P 的命名格式,除了支持video_name中的参数外,还支持{{ptitle}}表示分 P 标题、{{pid}}表示分 P 页号。

账号相关配置
  • • 也就是[credential]下面的参数,包括sessdatabili_jctbuvid3dedeuseridac_time_value,这些值可以通过浏览器开发者工具和本地存储获取,用于 Bili-Sync 登录哔哩哔哩账号,获取相应的视频资源。

下载路径配置
  • favorite_list:用于设置哔哩哔哩收藏夹的 ID 与本地下载路径的对应关系,需要我们手动添加参数。格式一般为:123456789 = "/downloads",表示将收藏夹 ID 为 123456789 的内容下载到downloads目录下。

  • collection_list:用于合集/视频的下载路径,同样需要我们手动添加参数。格式一般为:"season:123456:123456" = "/downloads",表示将该合集的视频下载到/downloads目录下。

1.登录B站获取cookie

使用谷歌浏览器按F12

点击“应用程序”

在左侧找到“Cookie”

随意选中下面一个网址,就能在右侧找到

sessdata,bili_jct,buvid3,dedeuserid 对应的值。

打开网易新闻 查看精彩图片

获取ac_time_value:

也是在当前页面,选择“控制台”,在最后一行输入代码“window.localStorage.ac_time_value”并回车,返回的一行代码便是我们需要的值

打开网易新闻 查看精彩图片

2.B站的收藏夹

接着我们搞定下载路径相关配置,先是咱们B站收藏夹内的下载。我们需要打开自己B站的收藏夹,随意点击其中一个收藏分类,可以看到浏览器网址显示的网址

space.bilibili.com/ 
<你的用户id>
 /favlist?fid= 
<你的收藏夹的id>
 &ftype=create 



知道了收藏夹 ID,所以我们此时的下载路径配置就为:xxxxxxxx = "/downloads"(请注意,xxxxxxxx为纯数字!)

如果有多个收藏夹需要下载

在添加一行下载路径配置即可。
打开网易新闻 查看精彩图片

3.前端认证

我这里使用windows+bili-sync-rs-Windows-x86_64,来演示。

运行时的日志,会生成auth_token。

[2mJan 29 17:52:19[0m [32m INFO[0m 欢迎使用 Bili-Sync,当前程序版本:v2.10.3
[2mJan 29 17:52:19[0m [32m INFO[0m 项目地址:https://github.com/amtoaer/bili-sync
[2mJan 29 17:52:20[0m [32m INFO[0m 数据库初始化完成
[2mJan 29 17:52:20[0m [33m WARN[0m 生成 auth_token:Z$=CuG87Yba%wW-B,可使用该 token 登录 web UI,该信息仅在首次运行时打印
[2mJan 29 17:52:20[0m [32m INFO[0m 配置初始化完成
[2mJan 29 17:52:20[0m [32m INFO[0m 开始运行管理页:http://0.0.0.0:12345

把auth_token 填入设置中

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

认证成功

打开网易新闻 查看精彩图片

4.在Bili‑Sync设置中登录B站

这里扫码登录或者填写刚才获取到的

sessdata,bili_jct,buvid3,dedeuserid、ac_time_value

我直接使用B站的扫码登录就行了。

打开网易新闻 查看精彩图片

5.打开我创建的收藏夹

就可以看到我的账号在

打开网易新闻 查看精彩图片

6.点击订阅

报错:

Bad request: path: Validation error: path must be a non-empty absolute path [{"value": String("默认收藏夹")}]

在我的电脑D盘新建一个文件夹

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

8.执行下载任务

回到首页

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

NAS

总结

当你把 B 站资源搬到 NAS,再把你的教育视频下载到NAS中,用飞牛自带的播放器、EMBY播放,你会发现:NAS 不只是存储,它可以成为家庭教育的“内容引擎”。

这套方案不仅能提升孩子的学习效率,也能让家长更轻松地管理学习资源。 如果你家里已经有 NAS,不妨试试这种新玩法,也许会彻底改变你对 NAS 的认知。