爬虫实战之《流浪地球》豆瓣影评分析(三)

4. 分析评论数量及评分与时间的关系

首先导入数据,进行一个初步的统计:

import pandas as pd
data = pd.read_csv('doubanliulangdiqiu.csv',encoding ='GB18030')
data['评分'].value_counts()

可以看到这样的情况:
在这里插入图片描述
如果没有数据,可以去看爬虫实战之《流浪地球》豆瓣影评分析(一)的爬取过程。

先做一个饼图来分析分布情况,先把评分的值计算命名为num,然后设置字体,绘制饼图,设置小数点的位数,还有给一个标题:

import matplotlib.pyplot as plt
num = data['评分'].value_counts()
plt.rcParams['font.sans-serif'] = "Simhei"
plt.pie(num, autopct="%.2f %%",labels=num.index)
plt.title('《流浪地球》豆瓣短评评分分数分布')

最后是结果:
在这里插入图片描述

短评数量与日期的关系

因为之前爬取数据的时候,把时分秒也爬了下来,而这次只需要日期,所以要选择一下。然后用日期排序:

num = data['发表时间'].apply(lambda x: x.split(" ")[0]).value_counts()
num = num.sort_index()  # 日期排序
plt.plot(range(len(num)),num)  # 刻度与num的长度一致
plt.xticks(range(len(num)),num.index,rotation=90) 
plt.grid()  # 添加网格背景
  • 10
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
好的,这是一个非常有趣的话题。您想了解哪些方面的内容呢?我们可以分为两个部分来讨论:一是如何爬取《流浪地球》的豆瓣影评,二是如何对数据进行分析。 首先,我们需要使用 Python 爬取豆瓣网站上《流浪地球》的影评。这里我推荐使用 Requests 和 Beautiful Soup 库来实现。具体步骤如下: 1. 导入所需库:`import requests` 和 `from bs4 import BeautifulSoup` 2. 构造URL:`url = 'https://movie.douban.com/subject/26266893/comments?status=P'`,其中 `26266893` 是《流浪地球》的豆瓣电影ID,`status=P` 表示只显示已经通过审核的影评。 3. 发送请求并获取HTML页面:`response = requests.get(url)`,`html = response.text` 4. 解析HTML页面:`soup = BeautifulSoup(html, 'html.parser')` 5. 提取影评内容:`comments = soup.find_all('span', {'class': 'short'})`,其中 `short` 是影评的CSS类名。这样就可以获取到一页的影评内容了。 6. 循环遍历所有页面并提取影评:在步骤2中,`comments` 后面的数字表示第几页的影评,我们可以通过循环遍历来获取所有页面的影评。 接下来,我们可以对爬取到的影评数据进行分析。这里我们可以使用 Pandas 和 Matplotlib 库来进行数据处理和可视化。具体步骤如下: 1. 导入所需库:`import pandas as pd` 和 `import matplotlib.pyplot as plt` 2. 将影评数据转为 DataFrame 格式:`df = pd.DataFrame(comments, columns=['comment'])` 3. 统计影评字数:`df['comment_len'] = df['comment'].apply(len)`,这样就可以得到每条影评的字数。 4. 统计影评评分:`df['rating'] = df['comment'].apply(lambda x: x.split()[0])`,这样就可以得到每条影评的评分。 5. 统计影评情感分析:可以使用第方库 TextBlob 来进行情感分析,得到每条影评的情感得分。 6. 可视化分析结果:可以使用 Matplotlib 来绘制柱状图、散点图等图表,来展示分析结果。 以上就是基本的流程,具体实现细节还需要根据实际情况来调整。希望这些内容能够对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值