搜狐媒体平台-搜狐网站>IT

他一出家就成中国最帅和尚

眼眸深邃、轮廓分明、身材颀长,活生生的一幅画。

大学副教授与在押服刑女结婚

这在监狱民警看来,那么令人不可思议。

【数据分析】<<战狼Ⅱ>>豆瓣十二万影评浅析

声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。举报

最近<<战狼Ⅱ>>异常火爆。《战狼Ⅱ》是吴京执导的动作军事电影,由吴京、弗兰克·格里罗、吴刚、张翰、卢靖姗、丁海峰等主演。该片于2017年7月27日在中国内地上映。2017年8月11日凌晨,《战狼2》票房(含服务费)突破40亿元,打破《美人鱼》此前创下的33.92亿元记录,打破国产电影历史最高票房纪录。

电影上映过后,大家褒贬不一。纷纷在豆瓣短评上面留言,表达自己对这部电影的看法。截至目前【2017.08.11】已经有十五万左右的评论。在你看评论的时候,你可能在一段时间里看到的大部分是表扬或者是贬低的评论,那么通过浏览评论我们很难看出大家对于这部电影的总体情况。现在让我们通过用数据分析的方法看看在这些评论中究竟发生了什么有趣的事情!

数据的获取

对于数据的获取,本文采用的是Python爬虫的方式获取的数据。用到的主要是requests包与正则包re。该程序并未对验证码进行处理。之前也爬取过豆瓣的网页,当时由于爬取的内容少,所以并没有遇到验证码的事情。在写本文爬虫的时候,原以为也不会有验证码,但是当爬取到大概15000个评论的时候跳出来验证码。然后我就想不就是十二万吗?最多我也就是输入大概十几次验证码,所以就没有处理验证码的事情。但是接下来的事情就有点坑到我了。爬取15000左右评论并输入验证码的时候,我以为会接下来爬取到30000左右,可是才爬了3000左右就不行了,还是要输验证码。然后就一直这样,跌跌撞撞,有时候爬取好长时间才需要验证码,有时候则不是。不过最后还是把评论爬取下来了。

爬取的内容主要是:用户名,是否看过,评论的星星点数,评论时间,认为有用的人数,评论内容。参看下图(用户名已隐藏):

以下是Python爬虫的代码:

  importrequests

  importre

  importpandasaspd

  url_first='https://movie.douban.com/subject/26363254/comments?start=0'

  head={'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/59.0.3071.109 Chrome/59.0.3071.109 Safari/537.36'}

  html=requests.get(url_first,headers=head,cookies=cookies)cookies={'cookie':'你自己的cookie'}#也就是找到你的账号对应的cookie

  reg=re.compile(r'<a href="(.*?)&.*?class="next">')#下一页

  ren=re.compile(r'<span class="votes">(.*?)</span>.*?comment">(.*?)</a>.*?</span>.*?<span.*?class="">(.*?)</a>.*?<span>(.*?)</span>.*?title="(.*?)"></span>.*?title="(.*?)">.*?class=""> (.*?)n',re.S)#评论等内容

  whilehtml.status_code==200:url_next='https://movie.douban.com/subject/26363254/comments'+re.findall(reg,html.text)[0]zhanlang=re.findall(ren,html.text)data=pd.DataFrame(zhanlang)data.to_csv('/home/wajuejiprince/文档/zhanlang/zhanlangpinglun.csv',header=False,index=False,mode='a+')#写入csv文件,'a+'是追加模式data=[]zhanlang=[]html=requests.get(url_next,cookies=cookies,headers=head)

以上代码注意设置你自己的User-Agent,Cookie,CSV保存路径等。

爬取的内容保存成CSV格式的文件。保存的文件内容如下:

数据清洗

本文用R语言来处理数据。虽然在爬取的时候已经非常注意爬取内容的结构了,但是还是不可避免的有一些值不是我们想要的,比如有的评论内容会出现在评论者这一项中。所以还是有必要进行一下数据的清洗。

首先加载要用到的所有包:

  library(data.table)

  library(plotly)

  library(stringr)

  library(jiebaR)

  library(wordcloud2)

  library(magrittr)

导入数据并清洗:

  dt<-fread(file.choose()) #导入数据dt[,c("V8","V9","V10","V11","V12","V13"):=NULL] #删除空列#一条命令清洗数据my_dt<-dt[str_detect(赞成评论数,"d+")][评论有用=='有用'][是否看过=="看过"][五星数%in%c("很差","较差","还数据浅析

先来看一看通过星星数评论的情况:

  plot_ly(my_dt[,.(.N),by=.(五星数)],type = 'bar',x=~五星数,y=~N)

五角星的个数对应5个等级,5颗星代表力荐,4颗星代表推荐,3颗星代表还行,2颗星代表较差,1颗星代表很差。通过五角星的评论显而易见。我们有理由相信绝大部分观看者对这部影片持满意态度。

对评论结果的云图展示:

  • 首先我们应该先进行评论的分词

  wk <- worker()sw<-function(x){wk<=x}segwords<-lapply(my_dt[,评论内容],sw)my_segwords<-unlist(segwords) #不要列表#去除停止词st<-readLines(file.choose()) #读取停止词stopwords<-c(NULL)for(i in 1:length(st)){ stopwords[i]<-st[i]}seg_Words<-filter_segment(my_segwords,stopwords) #去除中文停止词

  • 总体评论云图展示

  words<-table(seg_Words)%>%data.table()setnames(words,"N","pinshu")words[pinshu>1000] #去除较低频数的词汇(小于1000的)wordcloud2(words[pinshu>1000], size = 2, fontFamily = "微软雅黑",color = "random-light", backgroundColor = "grey")

由于数据太多,导致我的破电脑卡顿,所以在制作云图的时候去掉了频数低于1000的词汇。

云图结果如下:

整体来看,大家对这不影片的评论还是不错呀!剧情,动作,爱国等话题是大家谈论的焦点。但是如果把不同评价的人的评论分别展示会是什么样子呢?

  • 不同评论等级的云图展示

也就是对五个等级(力荐,推荐,还行,较差,很差)的评论内容制作云图。代码如下(只要改变代码中力荐为其他即可):

  1. 力荐的评论人的评论云图

2.推荐的评论人的评论云图

3.还行的评论人的评论云图

4.较差的评论人的评论云图

5.很差的评论人的评论云图

  

结论:

从不同的评论的分词结果来看,他们都有一个共同的话题:爱国。在力荐的评论中可能爱国话题的基数比很差的评论中的多,在力荐的评论中人们更愿意讨论的是爱国话题之外的事情。在很差的评论中人们讨论的大多是爱国话题。而且他们占的比例很有意思,从力荐的人到评论很差的人,爱国话题的比例逐渐增加。我们不能主观的认为谁对谁错,只能说他们站在的角度不一样,所以看到的结果也不太一样。当我们和别人意见不同时,往往是所处的角度不同。评论很差的人考虑的更多的是爱国的话题吧(这里只是爱国话题的讨论,并不是谁爱不爱国)!!

mt.sohu.com true 数据分析师 https://mt.sohu.com/20170814/n506709048.shtml report 12629 最近<<战狼Ⅱ>>异常火爆。《战狼Ⅱ》是吴京执导的动作军事电影,由吴京、弗兰克·格里罗、吴刚、张翰、卢靖姗、丁海峰等主演。
阅读(0) 举报
欢迎举报抄袭、转载、暴力色情及含有欺诈和虚假信息的不良文章。

热门关注

搜生活

搜生活+关注

搜狐公众平台官方账号

MAGIC杨梦晶

MAGIC杨梦晶+关注

生活时尚&搭配博主 /生活时尚自媒体 /时尚类书籍作者

搜狐教育

搜狐教育+关注

搜狐网教育频道官方账号

星吧GEO

星吧GEO+关注

全球最大华文占星网站-专业研究星座命理及测算服务机构

热门图片

  • 热点视频
  • 影视剧
  • 综艺
  • 原创
锦绣缘

同步热播-锦绣缘

主演:黄晓明/陈乔恩/乔任梁/谢君豪/吕佳容/戚迹
神雕侠侣

大结局-神雕侠侣

主演:陈晓/陈妍希/张馨予/杨明娜/毛晓彤/孙耀琦
封神英雄榜

同步热播-封神英雄榜

主演:陈键锋/李依晓/张迪/郑亦桐/张明明/何彦霓

六颗子弹

主演:尚格·云顿/乔·弗拉尼甘/Bianca Bree
龙虎少年队2

龙虎少年队2

主演:艾斯·库珀/ 查宁·塔图姆/ 乔纳·希尔

《奔跑吧兄弟》

baby14岁写真曝光

《我看你有戏》

李冰冰向成龙撒娇争宠

《明星同乐会》

李湘遭闺蜜曝光旧爱

《非你莫属》

美女模特教老板走秀

《一站到底》

曝搬砖男神奇葩择偶观

搜狐视频娱乐播报

柳岩被迫成赚钱工具

大鹏嘚吧嘚

大屁小P虐心恋

匆匆那年第16集

匆匆那年大结局

隐秘而伟大第二季

乔杉遭粉丝骚扰

The Kelly Show

男闺蜜的尴尬初夜

我来说两句排行榜

客服热线:86-10-58511234

客服邮箱:kf@vip.sohu.com