现在的爬虫可以做的事情非常多,数据采集、信息挖掘、电影评分、个人资料、实时弹幕等等,只要你技术超群,你爱咋爬咋爬,当然要合法。现在越来越多的人去学习爬虫,一点是现在互联网对于信息数据的需求越来越多,第二点python它是一种简单功能强大的编程语言,大部分爬虫学习都是用它。下面一起学习“你会使用python爬虫抓取弹幕吗?python爬虫如何爬取实时弹幕?”。
python爬虫抓取弹幕的方法步骤可以分成三部分,通过示例为大家进行讲解。
一、请求弹幕
在看视频的时候,对弹幕的爬取首先我们要去获取它的url,对于网站而言,弹幕的所在位置几乎都是固定不变的的格式,这里通过B站来进行举例说明,在一个网址中都会存在一个“cid”
1、先打开网站中的视频,按下f12,或者右击,然后点击“检查”,在最右边的操作框中,先将菜单栏切换到“网络”,在搜索框中将“cid”填入,进行搜索。
2、在所有信息中进行筛选,点击“Payload”,找到我们要的”cid”
3、这样我们就可以就获取到了一个网站中的cid了。
4、使用request库来对网站发起请求,使用urllib库来对网站的页面进行获取。代码示例如下:
url = "http://comment.bilibili.com/499893135.xml" “499893135”就是我们刚刚获取的cid值。 发送请求,在发送请求的时候还可以对浏览器进行伪装操作,我这里没有使用。 req = requests.get(url = url) 获取内容响应的内容 html_byte = req.content 将byte转为str html_str = str(html_byte,"utf-8")
二、解析弹幕
我们获取下来的数据一般都是以html格式存在,现在我们需要的就是将这些html格式进行处理,获取我们自己想要的信息,这个时候又要使用到一个BeautifuSoup库,代码如下:
soup = BeautifulSoup(html,'html.parser') results = soup.find_all('d') 把标签里的文本提取出来 contents = [x.text for x in results] 存为字典 dic ={"contents" : contents}
在代码中,我们首先会对这个html进行操作,使用soup.find_all获取一个<d>的标签,再将标签进行提取,最后以字典的形式进行存入。
三、存储弹幕
从网站获取下来的弹幕信息,我们可以使用一个excel表来对它进行存储,这里又要使用到两个库,是对表格进行处理的。
Xlwt库是对表格进行处理
pandas库
将刚才我们存储的字典创建一个dataFrame,这里是使用pandas库来对表格数据进行操作的,代码如下:
#用字典创建了一个电子表格
df = pd.DataFrame(dic) df["contents"].to_excel('htx.xlsx')
本篇你会使用python爬虫抓取弹幕吗?python爬虫如何爬取实时弹幕?的文章内容就介绍到这里了,希望能够给你带来帮助。