前段时间《八佰》上映了,让我们看看网友们对这部电影有什么看法
作者:互联网
前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
可以叫我才哥 | 作者
可以叫我才哥 | 来源
八佰
“
《八佰》是由华谊兄弟电影有限公司和北京七印象文化传媒有限公司出品,腾讯影业文化传播有限公司、北京光线影业有限公司和阿里巴巴影业(北京)有限公司联合出品,导演管虎执导,黄志忠、欧豪、王千源、姜武、张译、杜淳、魏晨、李晨、俞灏明等主演的战争题材影片。该片取材1937年淞沪会战期间,讲述了史称“八百壮士”的中国国民革命军第三战区88师524团的一个加强营,固守苏州河畔的四行仓库、阻击日军的故事。该片于2020年8月21日上午9点在中国大陆正式上映~
”
由于今年新冠疫情,电影院也是在最近一段时间才“解封”,《八佰》算是“开年”截止目前热度最高的电影了。朋友圈很多人看完容易沉浸在其气氛中、激发心中的民族感,当然也有一些网友持负面看法。那究竟大家都在有着什么样的观后感呢,我们来通过评论数据看看给予不同评分的观众都怎么说吧。
0.前言
这里我们主要是通过python进行猫眼电影评论内容获取,然后再导入数据库使用superset进行基础数据统分及看板生成,最后用jieba和wordcloud做词云分析。
本次数据统计周期为:2020年8月21日9点——8月27日24点 共采集到评论数据量:144,098条
本文主要分为三部分:
- 三类(好评、中评和差评)评价用户数据统分 本部分主要根据评分对用户进行分组,然后统计不同分组下用户数及这些用户评价内容的词云分析
- 评价数据分布详情 本部分主要是对爬取的全部数据按照日期、评分及用户地区进行基础的数据统计处理,并用supset进行可视化展示
- 评论数据爬虫过程 本部分详细介绍猫眼电影评论内容爬取的过程,大家可以参考代码对自己喜欢的电影做类似处理
1.三类(好评、中评和差评)评价用户数据统分
1.1.总体评价词云
在评论中,高频词汇是“勿忘国耻”、“震撼”、“铭记历史”、“国人如此”和“感动”等等,都是比较贴近该部剧作主题和正向的褒义词。
1.2.三类用户数据
评价分数区间为0-5分,按照3分以内为差评,3分为中评,4分以上为好评的分类标准,我们统计结果如下:
# 分箱 data['评价类型'] = pd.cut(data['评分'], [0,3,4,6], labels=["差评", "中评", "好评"],right=False) # 分组计算各评价类型 评价数量data_star = data.groupby('评价类型')['评分'].count().to_frame('数量').reset_index() # 计算占比data_star['占比'] = data_star['数量']/data_star['数量'].sum() data_star
评价类型数量占比
可以看到,超过90%的用户给予了4星以上好评,低于3星的差评仅占5.4%,绝大部分人还是给予了很高的评价。
1.3.三类用户的观后感差异
通过对不同评价类型用户的评论关键词分析,我们可以发现好评用户主要表达的是观影后的电影带来的情感共鸣,中评用户则对影片的评价关键点比较分散,差评用户似乎更多关注在导演、剧情和电影院上面。
1.3.1好评用户给予的评论内容词云
一共13万条好评评论,“勿忘国耻”、“感动”、“不错”、“中国”、“震撼”和“可以”等传递的情感非常鲜明。
1.3.2中评用户给予的评论内容词云
在一共5千余条中评评论中,我们看到这部分评论的内容维度参差不齐,有不少认为一般般的,但也有不少觉得可以、好看。
1.3.3差评用户给予的评论内容词云
在7千多条差评中,我们发现还是有不少认为好看、可以的,除此之外评价“垃圾”的用户占比较高,评价关键词也更多的转向了“导演”、“剧情”和“电影院”等。
我们抽样10条差评看看:
print(data[data['评价类型']=='差评'].sample(10)[['评价类型','点评内容']].to_markdown())
评价类型点评内容
2.评价数据分布详情
从正式上映到8月27日24点,猫眼累计有评论内容评价14.4万,评分高达9.24分,我们通过supset制作看板如下:
2.1.评分分布
在14.4万条评论中,有超过75%的用户给予了5星满分的评价,而超过4星的评价占比也高达90%+。
2.2.上映首周每日评价数分布
上映当天是周五早上9点,我有个同事以为是0点场,然后发现是早上9点便没考虑去追首场。我们可以看到,评价数走势其实比较平稳,除了首周周日那天有明显提升之外,工作日也很平稳(8月27日周四除外)。不过,一般次周周末会又有一个高峰,比如我和小伙伴就决定今天去看来着~
2.3.每日分时评价数分布
从评价数分时分布的走势来看,周末和工作日其实没有啥太大差异,都集中在凌晨2点前(夜猫子居多),下午4-6点,晚上9-12点。这也比较符合正常情况,毕竟吃饭时间不能占用,一般排片上也吃饭前1-2小时和吃饭时间后的排片较多。
2.4.评价用户城市分布
我记得之前应该是北上广深评价用户分布占前四,这次疫情原因,各地电影院“解封”条件不一样吧。从《八佰》首周的用户评价地区分布来看,成都高居第一位!!不得不说,咱们湖北武汉也进了前10 ,感动~
3.评论数据爬虫过程
评论数据爬虫过程主要分为 接口数据请求、数据处理和数据存储三部分,其中数据格式是简单的json格式,整个爬虫过程比较简单,我们不做详细讲解。
评论数据接口地址:
“
http://m.maoyan.com/mmdb/comments/movie/346210.json?v=yes&offset=0&startTime=2020-08-25%2011:48:06
”
数据请求结果(截取部分):
“
{"cmts":[{"approve":1,"approved":false,"assistAwardInfo":{"avatar":"","celebrityId":0,"celebrityName":"","rank":0,"title":""},"avatarurl":"https://img.meituan.net/maoyanuser/e4308d29872520d06a8d65b01f55dc206358.jpg","cityName":"西安","content":"让人哭的不是悲情,就好像上学的时候我自己做错了事情,结果老师罚了全班人这种感觉。家国大义凛然正气。","filmView":false,"id":1103548562,"isMajor":false,"juryLevel":0,"majorType":0,"movieId":346210,"nick":"","nickName":"","oppose":0,"pro":false,"reply":0,"score":5.0,"spoiler":0,"startTime":"2020-08-26 10:51:11","supportComment":true,"supportLike":true,"sureViewed":1,"tagList":{"fixed":[{"id":1,"name":"好评"},{"id":4,"name":"购票"}]},"time":"2020-08-26 10:51","userId":1029449566,"userLevel":3,"videoDuration":0,"vipType":0},...}
”
爬虫代码:(大家可自行优化)
import requests import jsonimport datetimeimport pandas as pd from fake_useragent import UserAgent start_time = '2020-08-27 23:59:59' end_time = '2020-08-21 09:00:00' # 电影上映时间 lis = []while start_time > end_time: url = 'http://m.maoyan.com/mmdb/comments/movie/346210.json?_v_=yes&offset=0&startTime=' + start_time.replace(' ', '%20') headers = {"User-Agent": UserAgent(verify_ssl=False).random} r = requests.get(url, headers=headers) data = r.text # 转为为字典 data = json.loads(data) data = data['cmts'] for li in data: dic = {} dic['昵称'] = li['nickName'] dic['城市'] = li['cityName'] dic['评价内容'] = li['content'] dic['评分'] = li['score'] dic['评价时间'] = li['startTime'] lis.append(dic) start_time = dic['评价时间'] start_time = datetime.datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S') + datetime.timedelta(seconds=-1) start_time = datetime.datetime.strftime(start_time, '%Y-%m-%d %H:%M:%S') df = pd.DataFrame(lis)
PS:如有需要Python学习资料的小伙伴可以加下方的群去找免费管理员领取
可以免费领取源码、项目实战视频、PDF文件等
标签:data,差评,用户,前段时间,八佰,评论,time,评价,上映 来源: https://www.cnblogs.com/hhh188764/p/13583401.html