“全文字数1106,阅读时间4分钟”
大家好,我是k同学。今年是祖国70年大庆,全国各地各族人民都在为祖国母亲送祝福,大街小巷都可以听到我和我的祖国这首歌曲,大家以此表达自己的心声。与此同时,同名电影也将在十一上映,为祖国献礼。虽说之前已经在网上看了预告片了,但是随着国庆的临近,我还没忍住又在网上就搜了我和我的祖国的预告片又看了一遍,同时也采集了4000多条弹幕,看看网友们的心情是不是跟我一样。
今天就跟大家分享一下,整个过程和分析结果。对于不太了解python的同学,可以看下整个流程,有个大概的思路,如果有兴趣可以试着动手敲一遍,寓教于乐式的学习一下。Python大佬欢迎斧正,指点不足。
话不多说,言归正传.
工作环境:
Window10 系统
PyCharm3.6版本
工具准备之后就可以撸起袖子开始干了。
第一步:数据采集
既然要分析就要先确定好数据,大家可以在腾讯视频,爱奇艺,优酷等视频网站点击观看相应的视频,同时可以采集弹幕信息。本文数据来自腾讯视频,仅做学习交流使用,如有侵权立马删除。
首先打开腾讯视频网站。我们可以很容易的找到我和我的祖国预告片,点击播放,可以很容易的看到弹幕。由于单个预告片弹幕数量有限,为了获取足够数据,小编点击观看了几个播放量较高的预告片。
下一步就是找弹幕接口。鼠标右键-->检查,打开浏览器的开发者模式。之后选择network选项,在这里我们可以看到浏览器给我们返回的信息内容,包括弹幕的信息。
接下来模拟浏览器给腾讯视频网站发送请求。这里只需要把返回数据的url,就是网络链接找到即可,需要切换选项卡到headers中,我们就能看到Request Url,这个就是我们要找的数据链接。
我们可以把这条连接复制粘贴到浏览器上,看一下大概是什么样子。可以看到返回的弹幕内容,说明数据没有问题。
我们现在可以把网页上的数据格式化一下,这样看起来更舒服一些。这里使用的是在线Json格式化工具,现在我们可以清晰的看出来每一条(红框内的)数据包含的都有哪些内容了。content就是我们想要获取的弹幕信息了。
之后就是打开PyCharm给这个url地址发送请求。这里使用的是requests模块直接发送请求,处理返回的数据,提取出需要的弹幕信息内容,最后保存到本地。
下图是本地保存的部分弹幕信息,隔着屏幕都能感受到了网友们满满的自豪感和强烈的爱国热情。此刻脑子里又不自觉的响起了
“我和我的祖国,一刻也不能分割
无论我走到哪里,都流出一首赞歌..."
第二步:词云展示
现在我们开始处理获取到的数据。主要是通过jieba分词,wordcloud词云,matplotlib等绘图模块进行处理,生成词云。
这样就生成了一个简单的词云,因为当初选的图片是中国地图所以词云生成的轮廓也是以中国地图为基础的。通过词云里的关键词可以看出网友们的激动的心情,此刻的我已经无心工作,只想赶紧给祖国母亲过生日。
PS.最开始看到里面有个VIP,心想这是个什么鬼,后来发现这个应该是vip用户的弹幕会在屏幕上飘过VIP+弹幕内容,彰显自己的尊贵身份。由此可见,腾讯视频的vip用户还是不少的。
好啦,先写到这里吧,如果觉得好玩的话欢迎关注、留言、转发、分享,不足之处请多多指点。
网友评论