「长津湖」 为什么这么火爆?用Python分析了5w+影评

Posted Python学习与数据挖掘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「长津湖」 为什么这么火爆?用Python分析了5w+影评相关的知识,希望对你有一定的参考价值。

要说十一档最热门的电影,那肯定是长津湖了,在十一档电影中评分排名第一。

并且刚刚上映两天,票房就已经突破了六亿,破了十一项记录!

本文通过爬取《长津湖》豆瓣短评,进行数据可视化分析后,来看看这部电影为什么这么受大家欢迎!

后台回复[长津湖]即可获得全部源码。

01

数据采集

我们进入豆瓣电影的短评页面,按F12打开开发者模式后,对页面进行观察后发现,评论数据是存在于源网页中的。

在上面,我们已经找到数据存储的网页和方式,那么只需要找到页面之间的联系,构造好循环,就可以批量开始爬取啦~

接下来对不同页面之间的URL进行观察

我们发现,每翻一页,start这个参数就增加20,其他参数不变,至此我们就可以开始构建爬虫了。

数据采集的核心代码:

import requests
import re
import openpyxl
for page in range(80):
  try:

      params = (

          ('start', str(page * 20)),
          ('limit', '20'),
          ('status', 'P'),
          ('sort', 'new_score'),
          ('comments_only', '1'),
          ('ck', 'qN8_'),
      )

      r = requests.get('https://movie.douban.com/subject/32493124/comments', headers=headers, params=params, cookies=cookies)

      yonghumingchengs = re.findall('', r.json()['html'], re.S)
      youyongshus = re.findall('(.*?)', r.json()['html'], re.S)
      pinglunshijians = re.findall('', r.json()['html'], re.S)
      pingluns = re.findall('(.*?)', r.json()['html'], re.S)



      for i in range(20):
          a = a + 1
          sheet.append([yonghumingchengs[i], youyongshus[i], pinglunshijians[i].split()[0].split("-")[-1],
                        pinglunshijians[i].split()[1].split(":")[0], pingluns[i]])
      print(f"已爬取完第{page}页数据,存入{i + 1}条数据....")
  except:
      wb.save("全部.xlsx")
      print(f"共爬取{page}页数据,存入{a}条数据....")
      ~~~

02

数据处理

01

导入评论数据

用pandas读取合并后的影评数据并预览。

import pandas as pd
df = pd.read_excel('全部.xlsx',names=['用户名称','点赞数','评论日期','评论时间','评论内容'])
df.head()

02

删除重复数据

df.drop_duplicates()

03

查看数据类型

df.info()

字段类型和缺失值对可视化分析的影响非常大,所以要在进行可视化分析前要对其进行查看。

字段类型和缺失值符合分析需要,无需另做处理。

03

可视化分析

现在对处理过的评论数据进行可视化分析。

01

词云图展示

对评论进行词云图展示后,我们发现战争、历史、震撼、志愿军这几个词出现非常多,很符合这部剧的主题。

02

各类星级占比

从图中,我们可以明显的看出,打4星的观众最多,占了36.3%,其次是3星和5星,分别占30.8%和25.6%。这样看来,观众还是非常肯定这部影片的。

03

主演提及次数

吴京和易烊千玺的提及数最多,没想到提及最少的是段奕宏。

04

评论发表时间分布

从图中,我们可以看出,大部分影评发表时间在17点、22点影院,所以可以适当增加这两个时间点的场次。

更多技术细节欢迎进群讨论


技术交流

欢迎转载、收藏、有所收获点赞支持一下!

目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

  • 方式①、发送如下图片至微信,长按识别,后台回复:加群;
  • 方式②、添加微信号:dkl88191,备注:来自CSDN
  • 方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

以上是关于「长津湖」 为什么这么火爆?用Python分析了5w+影评的主要内容,如果未能解决你的问题,请参考以下文章

为什么抖音张同学这么火爆?用 Python 分析 1w+条评论数据,我发现了其中的秘密

快50亿了!用Python分析长津湖到底好看在哪里

快50亿了!用Python分析长津湖到底好看在哪里

《长津湖》《我和我的父辈》,Python国庆档影评分析

为啥python这么火

Python爬虫——刚学会爬虫,第一次实践就爬取了 《长津湖》影评数据