Skip to content

Latest commit

 

History

History
119 lines (91 loc) · 5.9 KB

README.md

File metadata and controls

119 lines (91 loc) · 5.9 KB

Bangumi Data Helper

Node version NPM version License

Bangumi Data Helper 是一个命令行辅助工具,用于简化 Bangumi Data 的数据维护工作。bdh 可以完成大多数的重复性工作,但由于各个站点各个信息的不确定因素较多,爬取到的结果还需人工审核一遍。

Installation

npm i -g bangumi-data-helper

适用于 Bangumi Data version

Usage

需要在 bangumi-data 项目目录下运行。

# 查看帮助
bdh --help
# 生成某季度的初始数据
bdh create 2016q4
# 更新某月的番组数据
bdh update 201610
# 根据bangumi添加番剧数据
bdh add 207195
# 根据bangumi添加番剧数据, 并同时添加1个放送站点
bdh add 207195 nicovideo:yurucamp
# 根据bangumi添加番剧数据, 并同时添加多个放送站点
bdh add 207195 nicovideo:yurucamp gamer:89804
# 交互式地手动增加某月的放送站点
bdh edit 201610
# 补完某站的所有番剧
bdh hokan iqiyi
# 补充所有 end 字段为空的番剧
bdh end
# 清理已下架番组
bdh cleanup bilibili
# 使用代理
HTTP_PROXY=http://127.0.0.1:1087 bdh hokan nicovideo

bdh create <season>

该命令会根据 cal.syoboi.jp 的数据,创建指定季度的初始数据,包括日文标题、英文标题、官网、放送开始时间、番剧类型、Bangumi.tv 对应条目。有些番组不包含放送开始时间,这些数据会被放入 data/items/0000/00.json 待人工处理。

bdh update <month>

在添加维护放送站点信息时,可以在 sites 数组中添加番剧页面链接或包含 siteid 信息的对象,例如:

{
  // ...
  "sites": [
    "http://www.iqiyi.com/a_19rrh9uqb5.html",
    // 或者
    {
      "site": "iqiyi",
      "id": "a_19rrh9uqb5"
    }
  ]
}

在当前文件修改完后,可以运行该指令把当前文件所有番剧的 sites 数组处理成符合规范的格式,非模型定义的字段会被自动去除。注意,由于部分站点放送开始时间为无规律的中文,难以用程序解析,需要手动转换。

bdh add <bangumiId> [siteList..]

根据Bangumi上的数据添加番剧数据, 可以同时添加放送站点信息。

bdh edit <month>

交互式地手动添加番剧放送站点信息。

bdh hokan <site>

hokan 即为补完(番組補完計画),其工作模式为:爬取到某站所有的番剧数据,然后自动过滤掉已存在于 bangumi-data 的番剧和排除列表里的番剧,剩下的就是待添加或待排除的番剧。

执行该指令后,会在 data/items/0000/<site>.json 下输出待补完数据。复制番剧对象到 sites 数组中按 bdh update <month> 继续后续流程。对于非正常番剧(如乱入的站方自制节目、特典、广播剧、舞台剧、特摄、真人版等),请 PR 添加到排除列表

bdh end

运行该指令将寻找所有 end 字段为空的番剧并尝试补充。只会补充放送结束时间在本月之前的番剧,也就是说,某番剧本月 1 日完结,在本月 30 日运行该指令是无效的。

bdh cleanup <site>

清理某站已下架番组,其工作模式为:爬取该站hokan的番剧数据,然后比对存在于bangumi-data 的番剧,擭得可能已下架的番剧,在再次确定已下架后从番剧数据中清除

Status

下表列举了当前自动化情况,✔️表示可以自动获取,✖️表示不能,⭕表示需要手动修改,🚧表示待修。

site begin 补完 自动匹配现有番组 清理
abema ✖️ ✔️ ✔️ ✔️
acfun ✔️ ✔️ ✔️ ✔️
bilibili ✔️ ✔️ ✔️ ✔️
bilibili_hk_mo_tw ✔️ ✔️ ✔️ ✔️
bilibili_hk_mo ✔️ ✔️ ✔️ ✔️
bilibili_tw ✔️ ✔️ ✔️ ✔️
crunchyroll ✔️ ✔️ ✔️ ✔️
danime ✔️ ✔️ ✔️ ✔️
disneyplus ✖️ ✔️ ✔️ ✔️
gamer ✔️ ✔️ ✔️ ✔️
gamer_hk ✔️ ✔️ ✔️ ✔️
iqiyi ✔️ ✔️ ✖️ ✖️
letv ✖️ ✔️ ✖️ ✔️
mgtv ✔️ 🚧 ✖️ ✖️
mytv ✔️ ✔️ ✔️ ✔️
netflix ✔️ ✔️❓ ✔️ ✔️
nicovideo ✔️ ✔️ ✔️ ✖️
qq ✔️ ✖️ ✖️
unext ✔️ ✔️ ✔️ ✔️
viu ✔️ ✔️ ✔️ ✔️
youku ✔️ 🚧 ✖️ ✖️
youtube ✔️ ✔️ ✔️