分段弹幕(protobuf)
https://api.bilibili.com/x/v2/dm/web/seg.so
无需凭据 · 响应是二进制 · 二进制/XML · protobuf / deflate XML,需自行解析 · api.bilibili.com
i
无凭据实测
无 Cookie 实测 HTTP 200 application/octet-stream(193 字节),非 JSON返回
DmSegMobileReply(protobuf):repeated elems{ id, progress(毫秒), mode, fontsize, color, midHash, content, ctime, weight, idStr }
参数
| 名称 | 位置 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
type | query | number | 是 | 1 = 视频 |
oid | query | number | 是 | 分 P 的 cid |
segment_index | query | number | 是 | 第几段,每段 6 分钟,从 1 起 |
要点与坑
- Content-Type 是 application/octet-stream,用 fetch().arrayBuffer() 取原始字节再解
- protobuf 定义见 bilibili-API-collect 的 dm.proto;node 用 protobufjs、python 用 blackboxprotobuf 都能解
调用方式
javascript
bili_web_call { "path": "/x/v2/dm/web/seg.so?type=<…>&oid=<…>&segment_index=<…>" }同组其它能力:旧版弹幕 XML(deflate 压缩) · 弹幕池配置 / 元信息 · 历史弹幕(按日期) · 发送视频弹幕 · 弹幕点赞