不知道换什么手机?看看买过的怎么说,JD热门手机评论爬取与可视化

2024-06-04 03:18

本文主要是介绍不知道换什么手机?看看买过的怎么说,JD热门手机评论爬取与可视化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

20年初,受疫情影响,各家厂商的手机发布会在4月份如雨后春笋,接踵而至.

买那个手机呢?俗话说群众的眼睛是雪亮的,看看买过的人怎么说.本文主要爬取热门的华为40Pro 与小米10的评论进行分析

首先分析网页结构:

发现有个包含Comment 的请求,看看响应

发现评论就在这里面.每一页是10条

然后看看请求头

URL:

请求方式为GET.

请求参数在最下面:

分析发现,productId 对应不同的商品,score对应不同的评价类型,有全部评论,好评,中评,差评这几个分类.

另外一个需要我们注意的是page,通过分析发现网站最多展示100页的数据,可以采用循环的方式进行遍历.判断如果没有评论内容直接退出就可以了.

因为需要登录.这边使用世界最大同性交友网站的开源模块进行登录

返回的session可以保存到本地,这样不需要重复登录了.

然后就是构建完整的url,请求返回评论数据

数据解析

最后数据保存

修改参数,分别爬取好评与差评.接下来就是数据分析的过程

这里使用pandas,matplotlib,seaborn 这几个包.

import jieba
import wordcloud
import imageio
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
plt.rcParams['font.sans-serif'] = ['SimHei']
%matplotlib inline

读取数据

df = pd.read_csv('comments.csv')
bd_df = pd.read_csv("comments_bad.csv")

发现没有为空的字段

将creationTime 转化成日期字段,并且新增加一个日期的列

df['creationTime'] = pd.to_datetime(df['creationTime'])
df['date'] = df.creationTime.dt.date

首先看看不同日期的评论数

f,ax = plt.subplots(figsize=(10,4))
sns.countplot(df['date'],data=df)
plt.xlabel("日期")
plt.ylabel("评论数量")
plt.title("华为P40Pro 不同日期的评论数",fontsize=20)
plt.xticks(rotation=45)

f,ax = plt.subplots(figsize=(10,4))
sns.countplot(df['productColor'],data=df)
plt.xlabel("颜色")
plt.ylabel("销售量")
plt.title("华为P40Pro 不同颜色的销售量",fontsize=20)

f,ax = plt.subplots(figsize=(10,4))
sns.countplot(df['productSize'],data=df)
plt.xlabel("规格配置")
plt.ylabel("销售量")
plt.title("华为P40Pro 不同规格配置的销售量",fontsize=20)

最后看看用户评论的关键词有哪些,使用jieba,wordcloud模块做词云

comments_list = df['content'].values.tolist()
[i.strip() for i in comments_list]
comments_str = "".join(comments_list)
txtlist = jieba.lcut(comments_str)
string = " ".join(txtlist)
mk = imageio.imread("star.png")
w = wordcloud.WordCloud(mask=mk)w = wordcloud.WordCloud(width=1000,height=700,background_color='white',font_path='C:\Windows\Fonts\simfang.ttf',mask=mk,scale=15)
w.generate(string)
w.to_file('P40Pro.png')

如图所示,基本与发布会上所宣传的亮点是对应的.拍照毫无疑问是最大的亮点.

另外对差评也做了一个词云

有吐槽拍照的,吐槽音效的,还有大挖孔,续航这些等等.

小米10的我就不上代码了,代码跟上面是一致的,修改一下参数就可以了,直接上图:

好评词云:

差评词云:

由于网站只能显示100页的数据,数据量只有接近1000条左右.数据量还是有点小,分析结果就是这样.看了这些,你知道换什么手机了吗?如果想了解其他的手机,可以将PproductID这个参数换成你想要了解的手机ID,就可以了.

 

这篇关于不知道换什么手机?看看买过的怎么说,JD热门手机评论爬取与可视化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1028915

相关文章

录音功能在哪里? 电脑手机等设备打开录音功能的技巧

《录音功能在哪里?电脑手机等设备打开录音功能的技巧》很多时候我们需要使用录音功能,电脑和手机这些常用设备怎么使用录音功能呢?下面我们就来看看详细的教程... 我们在会议讨论、采访记录、课堂学习、灵感创作、法律取证、重要对话时,都可能有录音需求,便于留存关键信息。下面分享一下如何在电脑端和手机端上找到录音功能

Python实现数据可视化图表生成(适合新手入门)

《Python实现数据可视化图表生成(适合新手入门)》在数据科学和数据分析的新时代,高效、直观的数据可视化工具显得尤为重要,下面:本文主要介绍Python实现数据可视化图表生成的相关资料,文中通过... 目录前言为什么需要数据可视化准备工作基本图表绘制折线图柱状图散点图使用Seaborn创建高级图表箱线图热

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

电脑提示xlstat4.dll丢失怎么修复? xlstat4.dll文件丢失处理办法

《电脑提示xlstat4.dll丢失怎么修复?xlstat4.dll文件丢失处理办法》长时间使用电脑,大家多少都会遇到类似dll文件丢失的情况,不过,解决这一问题其实并不复杂,下面我们就来看看xls... 在Windows操作系统中,xlstat4.dll是一个重要的动态链接库文件,通常用于支持各种应用程序

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)

《使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)》字体设计和矢量图形处理是编程中一个有趣且实用的领域,通过Python的matplotlib库,我们可以轻松将字体轮廓... 目录背景知识字体轮廓的表示实现步骤1. 安装依赖库2. 准备数据3. 解析路径指令4. 绘制图形关键

Mac备忘录怎么导出/备份和云同步? Mac备忘录使用技巧

《Mac备忘录怎么导出/备份和云同步?Mac备忘录使用技巧》备忘录作为iOS里简单而又不可或缺的一个系统应用,上手容易,可以满足我们日常生活中各种记录的需求,今天我们就来看看Mac备忘录的导出、... 「备忘录」是 MAC 上的一款常用应用,它可以帮助我们捕捉灵感、记录待办事项或保存重要信息。为了便于在不同

8种快速易用的Python Matplotlib数据可视化方法汇总(附源码)

《8种快速易用的PythonMatplotlib数据可视化方法汇总(附源码)》你是否曾经面对一堆复杂的数据,却不知道如何让它们变得直观易懂?别慌,Python的Matplotlib库是你数据可视化的... 目录引言1. 折线图(Line Plot)——趋势分析2. 柱状图(Bar Chart)——对比分析3