macOS 版 爬虫学习--爬取B站弹幕
给自己定的小目标是每周学习一个小项目,转眼间这周马上就要结束啦,还好抓住了尾巴,嘻嘻!
这周的小项目是== “爬取B站弹幕”==
作为一名“科班出身”的计算机人,却又完全小白的我,之前就听说过“爬虫”,可是一直没有接触过,在我看来,他就是一种很牛的技术,哈哈,今天竟然亲自实践了 ,必须好好夸下自己
不过,还真是不太难,哈哈
我的系统是macOS的,用Anconda的Jupter notebook写的python代码,macOS系统和windows系统的差距还挺大的,我对他真是又爱又恨,很多时候使用一些软件、安装软件时让我无数次想换电脑,迫于贫穷,我只好去查很多资料解决这些问题,每次花的时间还不少,可是每次解决完后,都无比开心,哎,这就是“探索”吧!
**
爬虫开始啦
1.先在B站上面找到要爬虫的视频,我看的例子是 周杰伦新歌《Mojito》,然后自己尝试的事 Taylor Swift的《Love Story》
2.找到视频后,要打开控制台,我用的是 Safari浏览器,控制台是没有地方打开的,需要 通过 Safari浏览器->偏好设置—>高级——>勾选最后的“在菜单栏中显示“开发”菜单”。
这样,页面上方就出现了 “开发”,
点击开发->显示JavaScript控制台,就可以打开控制台了
3.在控制台上点到 元素这一栏,然后输入 cid,就能获取当前的cid号啦,如我这里是“119667952”
那么cid是什么呢?
cid=后面的一串数字,代表的是该网页在网站中的位置,也就是说通过cid就能够找到该网页啦
4.接着就是打开编代码软件编写代码啦
第一段代码:
这段代码主要是导入一些数据包,以方便后面调用里面的函数和方法,可是 我刚写完第一段代码尝试着运行,就出现了大问题,说 jieba 、wordcloud、pyecharts.charts没有定义,它找不到这些包,这不是在劝退嘛,555
既然没有,那就去安装,打开终端,输入 pip install jieba,终端告诉我 ,install 无法识别,这……
不过,后来发现,是因为我进入终端 没有执行一个步骤,macOS 和windows不一样,
要先 输入 source .bash_profile,然后再输入 pip install jibe, pip install word cloud, pip install piecharts,把这些数据包都下载安装好后,终于通过了第一段代码的执行。
第二段代码:
B站弹幕API格式:https://api.bilibili.com/x/v1/dm/list.so?oid= + cid ,并且获取cid之后,直接输入这个网址,可以获取文本形式的弹幕,用data将 弹幕保存下来,并且输出弹幕:
输出结果:
**第三段代码:**对文本进行处理以及展示词云图
输出结果显示:
只可以出现文字和字母,将那些字符过滤掉了,并且单点每条弹幕,还会出现频次
第四段代码:
输出结果显示:
第五段代码:
弹幕出现的时间分布
输出结果:
第六段代码:
弹幕模式:
输出结果:
B站弹幕的模式:1-3 滚动弹幕,4 底端弹幕,5顶端弹幕,6 逆向弹幕,7 精准定位,8 高级弹幕
对模式进行统计以及输出结果:
第七段代码:
弹幕的字号分布及输出结果
25号字是默认的字体
第八段代码:
弹幕颜色分布:
第九段代码:
每个用户发弹幕的频次:
参考博客:周杰伦新歌mojito
总结:利用爬虫,可以获取很多需要的信息,那什么是爬虫技术呢,就可以类似于一个搜索引擎,我们可以自己去控制我们想要的数据。这份代码又可以爬其他的视频的弹幕,分析你喜欢的爱豆的作品,尝试一下还是很美好哦!不过这些包我还没有很明白,自己也无法完整的重复这份代码,奥利给就对了!!!