前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >爬取bilibili再也不用头疼了,bilibili-api一步到位!

爬取bilibili再也不用头疼了,bilibili-api一步到位!

作者头像
我被狗咬了
发布2020-08-04 15:58:12
2.5K0
发布2020-08-04 15:58:12
举报
文章被收录于专栏:Python乱炖Python乱炖

前几天在github上看到有意思的项目 —— bilibili-api,作者是个二次元的宅男Passkou。以下是该项目的地址:

https://github.com/Passkou/bilibili_api

项目可以直接使用pip直接进行安装:

pip install bilibili_api

之后在代码中直接 import bilibili_api 就可以使用了!

先来看个简单的demo:

from bilibili_api import video, Verify
# 设置验证
verify = Verify(sessdata="your sessdata", csrf="your csrf")

# 初始化VideoInfo类
my_video = video.VideoInfo(aid="40473736", verify=verify)

# 获取视频信息
video_info = my_video.get_video_info()

# 转换成格式化JSON并打印
print(json.dumps(video_info, indent=4, ensure_ascii=False))

关于sessdata和csrf这两个数据我们需要在浏览器中查看自己的登陆数据:

参数名

类型

必须提供

默认值

说明

sessdata

str

False

"False"

用于登录验证

csrf

str

False

"False"

用于请求验证

具体查找流程如下:

  1. 地址栏旁边有个小锁(非HTTPS的话应该是个圆圈里头一个感叹号),点开,选择Cookies。
  1. 如图所示,找到SESSDATA的值就可以了,CSRF是bili_jct。

认证结果有以下4种情况:{"code": "代码", "message": "提示信息"}

code=-3:未提供SESSDATA,

code=-2:SESSDATA值有误,

code=-1:csrf值校验失败,

code=0:权限正常

可以通过对应的接口返回值来确认验证问题。

关于目前开放的接口,大家可以参考下面这个接口文档来进行开发:

https://github.com/Passkou/bilibili_api/blob/master/bilibili_api/src/api.json

目前为止开放的API只有Video(视频信息包含弹幕)、User(用户基本操作)和Dynamic(动态信息)模块,其他模块仍在后续开发中,喜欢的朋友可以去github上点个star哦~

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-07-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python乱炖 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档