用Python爬取分析某东618畅销商品销量数据,带你看看大家都喜欢买什么!
Posted 程序员启航
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Python爬取分析某东618畅销商品销量数据,带你看看大家都喜欢买什么!相关的知识,希望对你有一定的参考价值。
大家好,我是启航!
今天是618购物节,辰哥准备分析一波购物节大家都喜欢买什么?本文以某东为例,Python爬取618活动的畅销商品数据,并进行数据清洗,最后以可视化的方式从不同角度去了解畅销商品中,名列前茅的商品是哪些?销售数据如何?用户好评如何?等等
本文结构如下:
1、爬取某东畅销商品数据
2、清洗数据并并进行简单分析
3、将数据进行可视化展示
数据的字段如下:
一共爬取了243条某东畅销商品数据
01
获取数据
1. 分析网页
在编写代码之前,先来分析一波网页。
上面是某东的畅销商品,通过辰哥分析分析,该网页有异步加载(前面10个商品是静态加载,剩下的是动态异步加载),因此我们需要写了个请求去获取数据。
2. 获取静态网页商品链接
商品的销售、评论等数据在商品详情页,这里先获取商品详情页链接
结果如下:
3. 获取动态网页商品链接
通过抓包可以获取到动态加载链接,并获取到商品标题和商品id(这里的商品id可以用于后面拼接商品详情页链接)
获取json数据后,提取出商品标题和商品ID
4. 获取打折、原价、秒杀价
通过商品ID可以获取到商品打折、原价、秒杀价(这里有接口,接口是通过抓包获取的,感兴趣的可以去自己去尝试,不明白的可以直接使用)
这里将该功能封装成函数,通过传入商品ID就可以获取该商品的商品打折、原价、秒杀价
结果如下:
5. 获取评论数、好评数、中评数、差评数、好评率
通过商品ID可以获取到评论数、好评数、中评数、差评数、好评率(同样这里有接口,接口是通过抓包获取的,感兴趣的可以去自己去尝试,不明白的可以直接使用)
结果如下:
6. 保存到excel
接着开始遍历商品,并通过ID去获取商品的销售情况(步骤4和步骤5的函数),最后把数据保存到execl
定义表头
写入数据
其中的get_price和CommentCount是步骤4和步骤5的函数。count是excel中行数,因此在循环中count+1,依次写入下一行。
最终保存结果
一共爬取了243条某东畅销商品数据
02
数据分析&可视化
1.数据清洗
需要清洗的内容,主要有图中这三列(标题、打折、好评数)。
清洗目标:
-
标题过长(长度控制在10内),不方便后面的画图
-
打折字段中含有折字,在进行排序时不能直接转数值型。
-
好评数中的万,转为具体数值,如1.2万转为12000
清洗结果:
2.可视化-商品打折力度
从清洗后数据中取出:商品名称和打折这两列,进行【排序】从打折最大到打折最小。最后取出前15名进行可视化
核心代码如下:
可视化效果:
3.可视化-好评率统计
从数据中取出:好评率这列,对不同的好评率进行统计,如好评率是100%(1)的商品多少件,好评率99%(0.99)的商品多少件等。
核心代码如下:
可视化效果:
3.可视化-畅销商品销量排行
从数据中取出:商品名称和评论数这两列,这里根据评论数去作为销售依据,对商品的销量进行排序(高到低),并取出前15名进行可视化。
核心代码如下:
可视化效果:
4.可视化-畅销商品前15名原价与秒杀价对比
在上面的分析中可以知道畅销商品的销量前15名,这里将这15件商品的原价和秒杀价进行可视化对比。
核心代码如下:
可视化效果:
文章到这里就结束了,感谢你的观看
说实在的,每次在后台看到一些读者的回应都觉得很欣慰,我想把我收藏的一些编程干货贡献给大家,回馈每一个读者,希望能帮到你们。
干货主要有:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python所有知识点汇总(可以弄清楚Python的所有方向和技术)
*如果你用得到的话可以直接拿走,在我的QQ技术交流群里,可以自助拿走,群号是854406358。
以上是关于用Python爬取分析某东618畅销商品销量数据,带你看看大家都喜欢买什么!的主要内容,如果未能解决你的问题,请参考以下文章
表哥用Python爬取数千条淘宝商品数据后,发现淘宝这些潜规则!