哔哩哔哩视频快照-哔哩哔哩视频 API

  • 2020 年 08 月 11 日
  • 252
  • 886 字
  • 暂无评论

视频快照

快照的截取时间根据视频画面变化程度决定,各视频不相同

截取时间表的时间根据视频画面变化程度决定,各每个视频不相同

截取时间表的时间和快照一一对应,并按照从左到右 从上到下的顺序排布

获取视频快照(web 端)

http://api.bilibili.com/x/player/videoshot

请求方式:GET

url 参数:

参数名类型内容必要性备注
aidnum视频 avID必要(可选)avID 与 bvID 任选一个
bvidstr视频 bvID必要(可选)avID 与 bvID 任选一个
cidnum分 P CID非必要默认为 1P
indexnumjson 数组截取时间表非必要1:需要 0:不需要 默认为 0

json 回复:

根对象:

字段类型内容备注
codenum返回值0:成功 40001:请求错误 40003:无视频
messagestr错误信息默认为 0
ttlnum1
dataobj信息本体

data 对象:

字段类型内容备注
pvdatastrbin 格式截取时间表 url
img_x_lennum每行图片数一般为 10
img_y_lennum每列图片数一般为 10
img_x_sizenum每张图片长一般为 160
img_y_sizenum每张图片宽一般为 90
imagearray图片拼版
indexarrayjson 数组格式截取时间表无为空

data 中的 image 数组:

类型内容备注
0str图片拼版 1 url
nstr图片拼版 (n+1) url第一张拼版占满时延续第二张
……str…………

data 中的 index 数组:

类型内容备注
0num恒为 0
1num图片 1 截取时间视频 0 秒截取时间
nnum图片 n 截取时间单位为秒
……num……单位为秒

示例:

获取视频 av26273789/BV1os411H7wm 的快照

avID 方式:

curl -G 'http://api.bilibili.com/x/player/videoshot'\
--data-urlencode 'aid=26273789'\
--data-urlencode 'index=1'

bvID 方式:

curl -G 'http://api.bilibili.com/x/player/videoshot'\
--data-urlencode 'bvid=BV1os411H7wm'\
--data-urlencode 'index=1'
{
    "code": 0,
    "message": "0",
    "ttl": 1,
    "data": {
        "pvdata": "//i0.hdslb.com/bfs/videoshot/49075258.bin",
        "img_x_len": 10,
        "img_y_len": 10,
        "img_x_size": 160,
        "img_y_size": 90,
        "image": ["//i0.hdslb.com/bfs/videoshot/49075258.jpg", "//i0.hdslb.com/bfs/videoshot/49075258-1.jpg"],
        "index": [0, 0, 8, 14, 19, 25, 34, 40, 46, 56, 63, 70, 80, 87, 93, 100, 109, 117, 124, 133, 142, 148, 156, 164, 171, 179, 184, 192, 198, 206, 214, 223, 232, 239, 246, 254, 261, 269, 275, 283, 289, 299, 305, 310, 315, 322, 330, 339, 348, 358, 364, 371, 376, 382, 391, 404, 413, 421, 426, 434, 441, 452, 458, 463, 473, 479, 491, 497, 504, 514, 521, 528, 533, 540, 546, 552, 558, 567, 575, 586, 591, 602, 609, 615, 623, 629, 639, 647, 653, 658, 664, 670, 675, 684, 691, 698, 713, 724, 729, 737, 743, 754, 762, 772, 779, 784, 797, 803, 810, 817, 825, 834, 845, 851, 857, 867, 878, 888, 896, 903, 909, 914, 919, 928, 935, 944, 958, 970, 977, 988, 996, 1004, 1011, 1018, 1026, 1035, 1041, 1048, 1055, 1063, 1073, 1079, 1086, 1095, 1106, 1111, 1124, 1135, 1147, 1153, 1159, 1165, 1171, 1184, 1198, 1209, 1215, 1221, 1228, 1236, 1242, 1253, 1258, 1269, 1276, 1284, 1289, 1300, 1306, 1315, 1321, 1328, 1340, 1347, 1354, 1361, 1366, 1371, 1383, 1390, 1396, 1403, 1415]
    }
}

获取视频快照(APP 端)

http://app.bilibili.com/x/v2/view/video/shot

请求方式:GET

鉴权方式:appkey

url 参数:

参数名类型内容必要性备注
appkeystrAPP 密钥APP 方式必要
aidnum视频 avID必要
cidnum分 P CID必要
tsnum当前时间戳APP 方式必要
signstrAPP 签名APP 方式必要

json 回复:

根对象:

字段类型内容备注
codenum返回值0:成功 -3:API 校验密匙错误 -400:请求错误 10008:稿件的缩略图不存在
messagestr错误信息默认为 0
ttlnum1
dataobj信息本体

data 对象:

字段类型内容备注
pvdatastrbin 格式截取时间表 url
img_x_lennum每行图片数一般为 10
img_y_lennum每列图片数一般为 10
img_x_sizenum每张图片长一般为 160
img_y_sizenum每张图片宽一般为 90
imagearray图片拼版

data 中的 image 数组:

类型内容备注
0str图片拼版 1 url
nstr图片拼版 (n+1) url第一张拼版占满时延续第二张
……str…………

示例:

获取视频 av26273789CID=49075258)的快照

curl -G 'http://app.bilibili.com/x/v2/view/video/shot'\
--data-urlencode 'appkey=1d8b6e7d45233436'\
--data-urlencode 'aid=26273789'\
--data-urlencode 'cid=49075258'\
--data-urlencode 'ts=0'\
--data-urlencode 'sign=06c0a4f2ede21984313552bd9439db18'
{
    "code": 0,
    "message": "0",
    "ttl": 1,
    "data": {
        "pvdata": "http://i0.hdslb.com/bfs/videoshot/49075258.bin",
        "img_x_len": 10,
        "img_y_len": 10,
        "img_x_size": 160,
        "img_y_size": 90,
        "image": [
            "http://i0.hdslb.com/bfs/videoshot/49075258.jpg",
            "http://i0.hdslb.com/bfs/videoshot/49075258-1.jpg"
        ]
    }
}

获取视频快照(web 端)(用于封面预览)

http://api.bilibili.com/pvideo

请求方式:GET

内容与「获取视频快照 1」加参数 index=1 相同,但 url 带有转义,仅限第 1P

url 参数:

参数名类型内容必要性备注
aidnum视频 avID必要

json 回复:

根对象:

字段类型内容备注
codenum返回值0:成功 40001:请求错误 -404:无视频
messagestr错误信息默认为 0
ttlnum1
dataobj信息本体

data 对象:

字段类型内容备注
pvdatastrbin 格式截取时间表 url
img_x_lennum每行图片数一般为 10
img_y_lennum每列图片数一般为 10
img_x_sizenum每张图片长一般为 160
img_y_sizenum每张图片宽一般为 90
imagearray图片拼版
indexarrayjson 数组格式截取时间表无为空

data 中的 image 数组:

类型内容备注
0str图片拼版 1 url
nstr图片拼版 (n+1) url第一张拼版占满时延续第二张
……str…………

data 中的 index 数组:

类型内容备注
0num恒为 0
1num图片 1 截取时间视频 0 秒截取时间
nnum图片 n 截取时间单位为秒
……num……单位为秒

示例:

获取视频 av26273789 的快照

curl -G 'http://api.bilibili.com/pvideo'\
--data-urlencode 'aid=26273789'
{
    "code": 0,
    "message": "0",
    "ttl": 1,
    "data": {
        "pvdata": "\/\/i0.hdslb.com\/bfs\/videoshot\/49075258.bin",
        "img_x_len": 10,
        "img_y_len": 10,
        "img_x_size": 160,
        "img_y_size": 90,
        "image": ["\/\/i0.hdslb.com\/bfs\/videoshot\/49075258.jpg", "\/\/i0.hdslb.com\/bfs\/videoshot\/49075258-1.jpg"],
        "index": [0, 0, 8, 14, 19, 25, 34, 40, 46, 56, 63, 70, 80, 87, 93, 100, 109, 117, 124, 133, 142, 148, 156, 164, 171, 179, 184, 192, 198, 206, 214, 223, 232, 239, 246, 254, 261, 269, 275, 283, 289, 299, 305, 310, 315, 322, 330, 339, 348, 358, 364, 371, 376, 382, 391, 404, 413, 421, 426, 434, 441, 452, 458, 463, 473, 479, 491, 497, 504, 514, 521, 528, 533, 540, 546, 552, 558, 567, 575, 586, 591, 602, 609, 615, 623, 629, 639, 647, 653, 658, 664, 670, 675, 684, 691, 698, 713, 724, 729, 737, 743, 754, 762, 772, 779, 784, 797, 803, 810, 817, 825, 834, 845, 851, 857, 867, 878, 888, 896, 903, 909, 914, 919, 928, 935, 944, 958, 970, 977, 988, 996, 1004, 1011, 1018, 1026, 1035, 1041, 1048, 1055, 1063, 1073, 1079, 1086, 1095, 1106, 1111, 1124, 1135, 1147, 1153, 1159, 1165, 1171, 1184, 1198, 1209, 1215, 1221, 1228, 1236, 1242, 1253, 1258, 1269, 1276, 1284, 1289, 1300, 1306, 1315, 1321, 1328, 1340, 1347, 1354, 1361, 1366, 1371, 1383, 1390, 1396, 1403, 1415]
    }
}

图片拼版

以 160x90 像素为一张,横向 10 张,纵向 10 张,从左到右从上到下进行裁剪

图 1 为 0s,图 2 为 8s,图 3 为 14s,以此类推……

示例拼版图片 url:http://i0.hdslb.com/bfs/videoshot/49075258.jpg

bin 格式截取时间表

bin 的内容为 uint16 数组(2Byte 对齐),与 json 数组一一对应

0 第项恒为 0,从第 1 项开始作为截取图片的时间(秒)

示例 bin 格式截取时间表:http://i0.hdslb.com/bfs/videoshot/49075258.bin

hex 内容如下:

00000000  00 00 00 00 00 08 00 0e  00 13 00 19 00 22 00 28  |.............".(|
00000010  00 2e 00 38 00 3f 00 46  00 50 00 57 00 5d 00 64  |...8.?.F.P.W.].d|
00000020  00 6d 00 75 00 7c 00 85  00 8e 00 94 00 9c 00 a4  |.m.u.|..........|
00000030  00 ab 00 b3 00 b8 00 c0  00 c6 00 ce 00 d6 00 df  |................|
00000040  00 e8 00 ef 00 f6 00 fe  01 05 01 0d 01 13 01 1b  |................|
00000050  01 21 01 2b 01 31 01 36  01 3b 01 42 01 4a 01 53  |.!.+.1.6.;.B.J.S|
00000060  01 5c 01 66 01 6c 01 73  01 78 01 7e 01 87 01 94  |.\.f.l.s.x.~....|
00000070  01 9d 01 a5 01 aa 01 b2  01 b9 01 c4 01 ca 01 cf  |................|
00000080  01 d9 01 df 01 eb 01 f1  01 f8 02 02 02 09 02 10  |................|
00000090  02 15 02 1c 02 22 02 28  02 2e 02 37 02 3f 02 4a  |.....".(...7.?.J|
000000a0  02 4f 02 5a 02 61 02 67  02 6f 02 75 02 7f 02 87  |.O.Z.a.g.o.u....|
000000b0  02 8d 02 92 02 98 02 9e  02 a3 02 ac 02 b3 02 ba  |................|
000000c0  02 c9 02 d4 02 d9 02 e1  02 e7 02 f2 02 fa 03 04  |................|
000000d0  03 0b 03 10 03 1d 03 23  03 2a 03 31 03 39 03 42  |.......#.*.1.9.B|
000000e0  03 4d 03 53 03 59 03 63  03 6e 03 78 03 80 03 87  |.M.S.Y.c.n.x....|
000000f0  03 8d 03 92 03 97 03 a0  03 a7 03 b0 03 be 03 ca  |................|
00000100  03 d1 03 dc 03 e4 03 ec  03 f3 03 fa 04 02 04 0b  |................|
00000110  04 11 04 18 04 1f 04 27  04 31 04 37 04 3e 04 47  |.......'.1.7.>.G|
00000120  04 52 04 57 04 64 04 6f  04 7b 04 81 04 87 04 8d  |.R.W.d.o.{......|
00000130  04 93 04 a0 04 ae 04 b9  04 bf 04 c5 04 cc 04 d4  |................|
00000140  04 da 04 e5 04 ea 04 f5  04 fc 05 04 05 09 05 14  |................|
00000150  05 1a 05 23 05 29 05 30  05 3c 05 43 05 4a 05 51  |...#.).0.<.C.J.Q|
00000160  05 56 05 5b 05 67 05 6e  05 74 05 7b 05 87        |.V.[.g.n.t.{..|

原文地址:https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/video/snapshot.md


版权属于:Aini99

本文链接:https://bv-av.cn/read/cv24

本站部分内容转载于互联网,目的是为了传达信息。如果有内容侵犯了你的版权,请联系 QQ:1144560054。我们会在审查后第一时间进行修改。


—— 暂无评论 ——

评论已关闭