首页 > 技术文章 > 爬取b站互动视频信息

xqher 2019-08-23 15:45 原文

首先分辨视频是不是互动视频可以看

https://api.bilibili.com/x/player.so?id=cid:1&aid=89017

这个api返回的xml中的

<interaction>标签
普通的视频中该标签是空的,而在互动视频中返回内容大致如下
<interaction>{"graph_version":8758,"msg":"","error_toast":"剧情图被修改已失效"}</interaction>

里面的graph_version就是爬取互动视频的必要参数

cid是视频分p时的id,视频只有一p的时候随便填也能得到结果,但是不填的话就爬不到东西

爬的时候注意加上 Referer
↓这样就行
Referer:https://www.bilibili.com

每个互动视频都有一个独立的graph_version

可以用这个获取互动视频的选项

https://api.bilibili.com/x/stein/nodeinfo?aid=63800362&graph_version=8758

aid就是互动视频的av号,返回结果如下

返回结果

通过该返回可获取选项nodeid
graph_version必加,nodeid不加默认获取互动视频的片头,加了就是获取选项分支

https://api.bilibili.com/x/stein/nodeinfo?aid=63800362&node_id=232462

推荐阅读