互联网购物现在已经是非常普遍的购物方式,在互联网上购买商品并且使用之后,很多人都会回过头来对自己购买的商品进行一些评价,以此来表达自己对于该商品使用后的看法。商品评价的好坏对于一个商品的重要性显而易见,大部分消费者都以此作为快速评判该商品质量优劣的方式。所以,与此同时,有些商家为了获得好评,还会做一些 "好评优惠" 或者 "返点" 活动来刺激消费者评价商品。
既然商品评价对于消费者选购商品而言至关重要,那么我想试试可以从这些评价信息中获取到怎样的价值,来帮助消费者快速获取到关于该商品的一些重要信息,给他们的购物带来更加可靠地保证?
所以,我认为,一种快速、全面、高提炼度和高对比度的信息获取和展示方式将会非常必要。 于是,我采用分布式快速抓取京东的评价信息,然后使用 pandas 对抓取到的数据进行分析。
话不多说先附上使用地址
体验地址:http://awolfly9.com/jd/
想要分析京东商城的商品评价信息,那么需要做些什么呢
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
生成好评的词云,并且获取关键字
生成中评的词云,并且获取关键字
生成差评的词云,并且获取关键字
分析购买该商品不同颜色的比例,生成柱状图
分析购买该商品不同配置的比例,生成柱状图
分析该商品的销售数量和评论数量和时间的关系,生成时间则线图
分析该商品不同省份购买的的比例,生成柱状图
分析该商品不同渠道的销售比例,生成柱状图
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
分布式抓取京东商城的评价信息
采用分布式抓取的目的是快速的在短时间内尽量抓取足够多的商品评价,使分析结果更精确
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
数据分析
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
Django 后台 WEB
使用 Django 搭建一个简易的后台 jd_analysis,将分布式抓取数据和数据分析连起来,并且将分析结果返回前端显示。
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
组合出完整的评价链接插入到 redis 中,实现分布式爬虫抓取,尽可能在短时间内抓取足够多的该商品评价信息(我现在是 30s 时间大概可以抓取 3000 条评价信息)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
![](https://yqfile.alicdn.com/8481c8f592b7f349aa84a1de5c171db681516edf.png?x-oss-process=image/resize,w_1400/format,webp)
前端展示
在客户端第一次请求时,生成一个 GUID,并且存储在 cookie 中。然后开启一个定时器,带上 GUID 不断的向 jd_analysis 后台请求结果。jd_analysis 后台利用请求的 GUID 从 redis 中获取抓取信息和分析结果的所有内容,返回给前端。前端显示请求到的结果。
最后附上两张效果图
购买和评论时间折线图
![](https://ucc.alicdn.com/s7cq5fhefjgma/developer-article537560/20241019/4bb77e8960d645a7b818f6d99ffb7786.jpeg?x-oss-process=image/resize,w_1400/format,webp)
大功告成
以上就是完整的抓取京东商品的评价信息并且使用 pandas 分析评价然后利用 Django 搭建后台前端显示抓取和分析结果的所有步骤。
原文发布时间为:2017-04-19
本文作者:awolfly9
本文来自云栖社区合作伙伴“Python中文社区”,了解相关信息可以关注“Python中文社区”微信公众号