【Python】b站弹幕系统改版后爬虫方法(bilibili_api)

前言以前b站弹幕接口是这个:https://api.bilibili.com/x/v1/dm/list.so返回的是 XML 格式的信息,非常容易解析。但是,不知道什么时候开始,b站弹幕接口进行了更新,这个接口现在也被废弃了,改成了下面这个:https://api.bilibili.com/x/v2/dm/web/seg.soF12调试一看,好家伙,返回的是二进制流,根本就看不懂。这意味着,现有的通过直接访问API弹幕爬虫方法全部失效。那么怎么爬虫呢?经过我的解析,得出了这个结论:https
摘要由CSDN通过智能技术生成

前言

以前b站弹幕接口是这个:

https://api.bilibili.com/x/v1/dm/list.so

返回的是 XML 格式的信息,非常容易解析。

但是,不知道什么时候开始,b站弹幕接口进行了更新,这个接口现在也被废弃了,改成了下面这个:

https://api.bilibili.com/x/v2/dm/web/seg.so

F12调试一看,好家伙,返回的是二进制流,根本就看不懂。

这意味着,现有的通过直接访问API弹幕爬虫方法全部失效。那么怎么爬虫呢?

经过我的解析,得出了这个结论:https://passkou.com/articles/15/

可能很多人看不懂,所以干脆直接拿现成的来用就得了。

这里我给大家推荐一个我写的项目:bilibili_api。这是一个用 Python 写的,收集了b站常用的接口的模块。

当然也包括了弹幕获取。

项目LOGO

正题

首先,确保你的 Python 版本 >= 3.6,然后使用以下命令安装:


                
  • 10
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
好的,我可以为您提供一些关于Python爬取B站弹幕并进行可视化的参考。 首先,您需要使用Python的第三方库 requests 和 BeautifulSoup 来爬取B站视频的弹幕。可以使用requests发送HTTP请求,然后使用BeautifulSoup解析HTML页面。 以下是一个简单的爬取B站弹幕的代码示例: ```python import requests from bs4 import BeautifulSoup # 视频的BV号 bv = 'BV1pz4y1X7Gh' # 请求B站视频页面 url = f'https://www.bilibili.com/video/{bv}' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') # 获取弹幕XML文件的URL durl = soup.select_one('div[data-player]')['data-player'] xml_url = durl.replace('https://', '').split('/')[1] xml_url = f'https://{xml_url}/xml/{bv}.xml' # 请求弹幕XML文件 response = requests.get(xml_url) soup = BeautifulSoup(response.text, 'html.parser') # 解析弹幕 danmus = soup.select('d') for danmu in danmus: print(danmu.text) ``` 接下来,您可以使用Matplotlib和WordCloud等库来将爬取到的弹幕进行可视化。例如,您可以使用WordCloud生成弹幕词云图: ```python from wordcloud import WordCloud import jieba import matplotlib.pyplot as plt # 将所有弹幕拼接成一个字符串 text = '' for danmu in danmus: text += danmu.text # 使用jieba进行中文分词 words = jieba.cut(text) # 生成词云图 wordcloud = WordCloud(font_path='simhei.ttf', width=800, height=400).generate(' '.join(words)) plt.imshow(wordcloud, interpolation='bilinear') plt.axis('off') plt.show() ``` 以上就是一个简单的Python爬取B站弹幕并进行可视化的示例。当然,如果您需要更复杂的可视化效果,可以使用更多的Python库和图表绘制工具进行实现。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值