首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何爬取b站弹幕文件

我们知道编写一个爬虫之前最重要的是进行网页结构的分析,确定你要抓取的部分是属于网页结构的哪一部分。以“你绝对没听过的梁朝伟唱歌 一开口就苏了 可惜被梁家辉开腔了”为例子,打开谷歌浏览器的开发者工具,分析网页结构。

我们会发现,弹幕列表一栏对应的网页结构并不是我们想抓取的弹幕文件,那么弹幕文件在哪那?很简单,由于弹幕是滚动播放的,所以有一个快速找到弹幕文件的方法。在开发者工具中点击network。

重新加载页面(一定要刷新一下),在搜索里输入xml(弹幕一般为xml文件)

在新的窗口将其打开,来看看到底是不是我们要找的弹幕文件

确实是,分析一下这个弹幕文件的网址,图中框起来的是视频的cid号,并不是av番号。所以有两种抓取方式,一种是用正则表达式匹配cid,一种是直接抓取整个网页的方式。

我确实尝试了两种方式,正则表达式是借鉴别人的,但是代码只能用运行两次,就会被封号(因为这种方法要写代理)。我就自己写了一个直接抓取网页的代码,比较简单也没有风险,唯一麻烦的是爬取弹幕之前要先查找出cid。这就再次说明了,在写爬虫的时候urllib2和BeautifulSoup的方式要比正则表达式更健壮。下面直接上代码(python3.6环境,抓取弹幕文本并将其写入名为text30的文件中)

今天的分享就是这些了,下次将继续分享利用python进行数据分析和制作词云!比心

以人文之情怀

以学术为志业

···········

2018年最值得期待的活动:

三位教育部青年长江学者领衔,邀你深度研修社会科学研究方法,2018前沿社会科学研究方法暑期高级研修班(点击)正在火热报名中,按照报名顺序优先安排座位哦!

扫码报名

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180409G1H20R00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券