前面所有的准备工作基本做完了,这篇帖子的主要目的是代码的编写,已经编写的流程分析等
下面是前面整理的数据:
-
通过bvid请求pagelist 获得视频列表信息 https://api.bilibili.com/x/player/pagelist?bvid=BV1x5411P7jk&jsonp=jsonp
-
通过视频列表请求获取下载地址 https://api.bilibili.com/x/player/playurl?cid=310586831&bvid=BV1x5411P7jk&qn=64&type=&otype=json&fourk=1&fnver=0&fnval=976&session=47a137f85876dd69f00447b9f7d8e44c
一.获取视频列表
def GetVideosListByBvid(aid):
resp = requests.get("https://api.bilibili.com/x/player/pagelist?aid=%s&jsonp=jsonp"%aid)
if resp.status_code >= 200 and resp.status_code < 300:
data = resp.json()
return data["data"]
return []
同样的通过这个代码结束后 会返回一个集合里所有的视频资料,包括此视频的cid,page,名字等等
比较重要的参数是cid 因为有了cid我们就可以进行下载了