From 177172e91fd6759f7aba570df4a43463d74c9d0a Mon Sep 17 00:00:00 2001 From: amtoaer Date: Fri, 12 Jul 2024 18:30:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=99=E7=82=B9=E5=84=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/design.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/docs/design.md b/docs/design.md index 3bff3bc..97f29b7 100644 --- a/docs/design.md +++ b/docs/design.md @@ -64,8 +64,14 @@ page 表包含了 page 的基本信息,如 cid、标题、封面等。与 vide > [!WARNING] > b 站实现接口时为了节省资源,通过 video list 获取到的 video 列表通常是分页且不包含详细信息的。 -程序会扫描所有配置文件中包含的 video list,获取其中包含的 video 的简单信息并填充到数据库。 +程序会扫描所有配置文件中包含的 video list,获取其中包含的 video 的简单信息并填充到数据库。在实现时需要避免频繁的全量扫描以降低请求次数。 -在实现时不能每次都将 video 列表全部扫一遍,因此程序会使用视频的 bvid 与 time 字段来检验视频是否已经存在于数据库中。实际拉取时会逐页请求,发现 bvid 与 time 均相同的记录会认为已经到达扫描过的位置,停止拉取。 +程序会使用视频的 bvid 与 time 字段来检验视频是否已经存在于数据库中。实际拉取时会逐页请求,发现 bvid 与 time 均相同的记录会认为已经到达扫描过的位置,停止拉取。 ### 填充 video 详情 + +将新增视频的简单信息写入数据库后,下一步会填充 video 详情。 + +具体来说,这一部会筛选出所有未完全填充信息的 video,逐个对详细信息(如标签、完整分页这种不会包含在列表中的信息)做请求并填充到数据库中。 + +在这个过程中,如果遇到 -404 错误码则说明视频无法被正常访问,程序会将该视频标记为无效并跳过。