爬取180000条影评,分析电影《八佰》的30亿之路

python

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

以下文章来源于小蚊子数据分析 ,作者小蚊子数据分析

 

最近《八佰》这部电影破30亿了,上映差不多2个月。对于沉寂了半年、影院上座率仍限定在50%的电影市场而言,这样的成绩出人意料。

从猫眼电影官网可以看到,《八佰》获得了9.2分的高口碑。一向好奇的我产生了一些疑惑,这些人到底在评论些啥?哪些地方的人评论最多?针对不同演员角色的评论内容有什么不同?

 

数据获取

猫眼电影是简单的动态网页,数据格式为json,通过解析接口的方式即可轻松获取。

def parse_page(html):

try:

data = json.loads(html)["cmts"] # 将str转换为json

#print(data)

comments = []

for item in data:

comment = {

"id": item["id"],

"nickName": item["nickName"],

"cityName": item["cityName"] if "cityName" in item else "", # 处理cityName不存在的情况

"content": item["content"].replace("

", " ", 10), # 处理评论内容换行的情况

"score": item["score"],

"startTime": item["startTime"]

}

comments.append(comment)

return comments

except Exception as e:

pass

 

数据清洗

读取影评数据

import pandas as pd

import numpy as np

data=[]

with open("comments.txt", "r",encoding="utf-8-sig") as f_input:

for line in f_input:

data.append(list(line.strip().split(",")))

data

转为DataFrame并添加列名

df = pd.DataFrame(data).iloc[:, 0:6]

df.columns = ["观众ID","观众昵称","城市","评论内容","评分","评论时间"]

删除重复记录和缺失值

df = df.drop_duplicates()

df = df.dropna()

预览并保存

df.sample(5)

df.to_csv("八佰.csv",index=False,encoding="utf_8_sig")

整体评论词云

 

对18万条影评内容进行分词,并将频率最高的500个词抽离出来制作词云图,我们发现广大观众对《八佰》这部战争题材电影表现出强烈的情感。除了好看、不错这些赞美之词以外,更多的是震撼、感人、历史、勿忘国耻等代表着强烈民族色彩的词。

评论类型分布

 

超过90%的好评率,20亿+的票房不是没有道理。

差评抽样

 

差评虽不多,但集中在对《八佰》结局的轰炸。

评论数据量TOP10城市

 

成都人对《八佰》评论热情高涨,超过北上广深等大城市。

相关演员提及

 

观众评论中提及欧豪和端午的次数最多,不知是因为演技还是颜值?

关于端午的评论

 

关于老算盘的评论

 

关于羊拐的评论

以上是 爬取180000条影评,分析电影《八佰》的30亿之路 的全部内容, 来源链接: utcz.com/z/531150.html

回到顶部