GitHub:哔哩哔哩的API调用模块

1,325 阅读3分钟

hello,小伙伴们,大家好,今天给大家介绍的开源项目是:bilibili_api,这个开源项目主要是用Python写的调用 Bilibili 各种API的库,范围涵盖视频、音频、直播、动态、专栏、用户、番剧等[1]。你可以使用很简短的代码去调用API,而不需要自己去寻找API,指定各种参数。

安装

pip install bilibili_api

  • requests
  • beautifulsoup4
  • aiohttp
  • websockets
  • cssutils

特色


  • 范围涵盖广,基本覆盖常用的爬虫,操作。
  • 可使用代理,绕过b站风控策略。
  • 全面支持BV号(bvid),同时也兼容AV号(aid)。
  • 调用简便,函数命名易懂,代码注释详细。
  • 不仅仅是官方提供的API!还附加:AV号与BV号互转[2]、连接直播弹幕Websocket服务器、视频弹幕反查[3]、专栏内容爬取等。

使用


接下来我们来获取视频的播放量等信息:

from bilibili_api import video

v = video.get_video_info(bvid="BV1uv411q7Mv")
print(v)

输出(已格式化,已省略部分):

{
    "bvid": "BV1uv411q7Mv",
    "aid": 243922477,
    "videos": 1,
    "tid": 17,
    "tname": "单机游戏",
    "copyright": 1,
    "pic": "http://i2.hdslb.com/bfs/archive/82e52df9d0221836c260c82f2890e3761a46716b.jpg",
    "title": "爆肝98小时!在MC中还原糖调小镇",
    "pubdate": 1595203214,
    "ctime": 1595168654,
    ...
}

就这么简单。

如何给这个视频点赞?我们需要登录自己的账号。

几乎所有函数都支持传入一个本API自定义的类 bilibili_api.Verify ,用于验证登录。

为了调用API方便,我们一次性获取全部需要用到的值。

获取 SESSDATA 和 CSRF


这里以 谷歌浏览器 为例。 首先我们可以在链接栏左侧看到一个小锁,如果你没有使用HTTPS,那么可能会显示 不安全 的字样,点击以后,下面有个Cookies。

点开后,我们在下面找到以下两个键对应的值,分别是 SESSDATA 和 bili_jct,这里注意一下,bili_jct 就是 CSRF

接下来,我们实例化 bilibili_api.Verify 类,之后用于传入各种API函数。

from bilibili_api import Verify

verify = Verify(sessdata="你的SESSDATA值", csrf="你的bili_jct值")

接下来我们给这个视频进行点赞操作,完整代码如下:

from bilibili_api import video, Verify

verify = Verify("你的SESSDATA值", "你的bili_jct值")
video.set_like(bvid="BV1uv411q7Mv", status=True, verify=verify)

如果没有报错,就代表调用API成功,你可以到视频页面确认是不是调用成功了。

注意,请不要泄露这两个值给他人,否则你的账号将可能遭受盗号的风险!

注意,请不要泄露这两个值给他人,否则你的账号将可能遭受盗号的风险!

注意,请不要泄露这两个值给他人,否则你的账号将可能遭受盗号的风险!

关于API调用

所有API调用,请尽量使用 指名方式 传参,因为API较多,我写的时候可能不同函数的传参顺序不一样,例子:

# 建议方式
video.set_like(bvid="BV1uv411q7Mv", status=True, verify=verify)

# 当然也可以这样
kwargs = {
    "bvid": "BV1uv411q7Mv",
    "status": True,
    "verify": verify
}
video.set_like(**kwargs)

# !!!不建议方式
video.set_like("BV1uv411q7Mv", True, verify)

以上就是这个开源项目的介绍了,感兴趣的小伙伴,不妨自己去应用一下,peace!

开源地址:github.com/Passkou/bil… 项目官网: bilibili_api 官网 开发文档: bilibili_api 开发文档

今天的推荐不知道大家喜欢吗?如果你们喜欢话,请在文章底部留言或点赞,以表示对我的支持,你们的留言,点赞,转发关注是我持续更新的动力哦!

关注公众号回复:"1024",免费领取一大波学习资源,先到先得哦!