思路:
网页分析
获取到网页数据
https://api.bilibili.com/x/web-interface/view?aid=80859659
使用JSON格式化在线工具 这样分析查看比较清晰
GET https://api.bilibili.com/x/web-interface/view?bvid=#视频bvid GET https://api.bilibili.com/x/web-interface/view?aid=#视频avid 正常返回 {"code":0,"message":"0","ttl":1,"data":{"bvid":"#bvid","aid":#avid,"videos":#包含视频数量,"tid":#分区id,"tname":"#分区","copyright":1,"pic":"#头图","title":"#视频标题","pubdate":#发布时间,"ctime":#创建时间,"desc":"#视频简介","state":0,"attribute":#UnKnow,"duration":#UnKnow,"mission_id":#UnKnow,"rights":{"bp":0,"elec":0,"download":1,"movie":0,"pay":0,"hd5":1,"no_reprint":1,"autoplay":1,"ugc_pay":0,"is_cooperation":0,"ugc_pay_preview":0,"no_background":0},"owner":{"mid":#作者id,"name":"#作者名字","face":"#作者头像"},"stat":{"aid":avid,"view":#观看量,"danmaku":#弹幕,"reply":#评论,"favorite":#收藏,"coin":#投币,"share":#分享,"now_rank":0,"his_rank":0,"like":#点赞,"dislike":#差评,"evaluation":""},"dynamic":"分类?","cid":#UnKnow,"dimension":{"width":1920,"height":1080,"rotate":0},"no_cache":false,"pages":[{"cid":#UnKnow,"page":1,"from":"vupload","part":"fans","duration":#UnKnow,"vid":"","weblink":"","dimension":{"width":1920,"height":1080,"rotate":0}}],"subtitle":{"allow_submit":false,"list":[]}}}
获取视频简介
获取账号所有视频avid
空间接口可以正常get使用
https://space.bilibili.com/ajax/member/getSubmitVideos?mid=97678687&pagesize=30&tid=0&page=1&keyword=&order=pubdate
这个接口很好抓,并且不需要任何验证
可以从中轻易拿到视频数和页数
获取粉丝:
https://api.bilibili.com/x/relation/stat?vmid=80859659&jsonp=jsonp&callback=__jp2
请注意,所有的接口请求时候务必带上cookie,referer和csrf_token
返回结果对应
aid,#av号
title,#标题
tname,#视频类型
time.strftime(“%Y-%m-%d %H:%M:%S”,time.localtime(ctime)),#上传时间,网页获取时间为Unix时间戳,转换成一般时间显示模式
ownername,#作者
danmaku,#弹幕数
reply,#评论数
favorite,#收藏数
coin,#投币数
like#点赞数
备注:
嵌入Bilibili HTML5视频播放:
http://player.bilibili.com/player.html?aid=40606155&cid=71315067&page=1
key | 说明 |
---|---|
aid | 视频ID 就是B站的 avxxxx 后面的数字 |
cid | 应该是客户端id, clientId 的缩写(推测的, 不一定准确) 经过测试, 这个字段不填也没关系 |
page | 第几个视频, 起始下标为 1 (默认值也是为1) 就是B站视频, 选集里的, 第几个视频 |
as_wide | 是否宽屏 1: 宽屏, 0: 小屏 |
high_quality | 是否高清 1: 高清, 0: 最低视频质量(默认) 如视频有 360p 720p 1080p 三种, 默认或者 high_quality=0 是最低 360p high_quality=1 是最高1080p |
danmaku | 是否开启弹幕 1: 开启(默认), 0: 关闭 |
获取UP所有视频的API接口
http://space.bilibili.com/ajax/member/getSubmitVideos
获取UP某频道内所有视频的API接口
http://api.bilibili.com/x/space/channel/video
获取UP某一期视频信息的API接口
http://api.bilibili.com/x/web-interface/view
获取UP某一期视频中某P视频信息的API接口
http://api.bilibili.com/x/player/playurl
获取UP个人公开信息的API接口
http://api.bilibili.com/x/space/acc/info
参考资料
https://blog.csdn.net/chaoping315/article/details/80106141
https://segmentfault.com/a/1190000017511459?utm_source=tag-newest