项目内容

本案例选择>> 商品类目:沙发;

数量:共100页  4400个商品;

筛选条件:天猫、销量从高到低、价格500元以上。

项目目的

1. 对商品标题进行文本分析 词云可视化

2. 不同关键词word对应的sales的统计分析

3. 商品的价格分布情况分析

4. 商品的销量分布情况分析

5. 不同价格区间的商品的平均销量分布

6. 商品价格对销量的影响分析

7. 商品价格对销售额的影响分析

8. 不同省份或城市的商品数量分布

9.不同省份的商品平均销量分布

注:本项目仅以以上几项分析为例。

项目步骤

1. 数据采集:Python爬取淘宝网商品数据

2. 对数据进行清洗和处理

3. 文本分析:jieba分词、wordcloud可视化

4. 数据柱形图可视化 barh

5. 数据直方图可视化 hist

6. 数据散点图可视化 scatter

7. 数据回归分析可视化 regplot

工具&模块:

工具:本案例代码编辑工具 Anaconda的Spyder

模块:requests、retrying、missingno、jieba、matplotlib、wordcloud、imread、seaborn 等。

原代码和相关文档后台回复“淘宝”下载

一、爬取数据

因淘宝网是反爬虫的,虽然使用多线程、修改headers参数,但仍然不能保证每次100%爬取,所以 我增加了循环爬取,每次循环爬取未爬取成功的页 直至所有页爬取成功停止。

说明:淘宝商品页为JSON格式 这里使用正则表达式进行解析;

代码如下:

二、数据清洗、处理:

(此步骤也可以在Excel中完成 再读入数据)

代码如下:

说明:根据需求,本案例中只取了 item_loc, raw_title, view_price, view_sales 这4列数据,主要对 标题、区域、价格、销量 进行分析。

代码如下:

三、 数据挖掘与分析:

【1】. 对 raw_title 列标题进行文本分析:

使用结巴分词器,安装模块pip install jieba

对 title_s(list of list 格式)中的每个list的元素(str)进行过滤 剔除不需要的词语,即 把停用词表stopwords中有的词语都剔除掉:

因为下面要统计每个词语的个数,所以 为了准确性 这里对过滤后的数据 title_clean 中的每个list的元素进行去重,即 每个标题被分割后的词语唯一。

观察 word_count 表中的词语,发现jieba默认的词典 无法满足需求:

有的词语(如 可拆洗、不可拆洗等)却被cut,这里根据需求对词典加入新词(也可以直接在词典dict.txt里面增删,然后载入修改过的dict.txt)

词 云可视化:

安装模块 wordcloud:

方法1: pip install wordcloud

方法2: 下载Packages安装:pip install 软件包名称

软件包下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud

注意:要把下载的软件包放在Python安装路径下。

代码如下:

分析结论:

1. 组合、整装商品占比很高;

2. 从沙发材质看:布艺沙发占比很高,比皮艺沙发多;

3. 从沙发风格看:简约风格最多,北欧风次之,其他风格排名依次是美式、中式、日式、法式 等;

4. 从户型看:小户型占比最高、大小户型次之,大户型最少。

【2】. 不同关键词word对应的sales之和的统计分析:

(说明:例如 词语 ‘简约’,则统计商品标题中含有‘简约’一词的商品的销量之和,即求出具有‘简约’风格的商品销量之和)

代码如下:

对表df_word_sum 中的 word 和 w_s_sum 两列数据进行可视化

(本例中取销量排名前30的词语进行绘图)

由图表可知:

1. 组合商品销量最高 ;

2. 从品类看:布艺沙发销量很高,远超过皮艺沙发;

3. 从户型看:小户型沙发销量最高,大小户型次之,大户型销量最少;

4. 从风格看:简约风销量最高,北欧风次之,其他依次是中式、美式、日式等;

5. 可拆洗、转角类沙发销量可观,也是颇受消费者青睐的。

【3】. 商品的价格分布情况分析:

分析发现,有一些值太大,为了使可视化效果更加直观,这里我们结合自身产品情况,选择价格小于20000的商品。

代码如下:

由图表可知:

1. 商品数量随着价格总体呈现下降阶梯形势,价格越高,在售的商品越少;

2. 低价位商品居多,价格在500-1500之间的商品最多,1500-3000之间的次之,价格1万以上的商品较少;

3. 价格1万元以上的商品,在售商品数量差异不大。

【4】. 商品的销量分布情况分析:  

同样,为了使可视化效果更加直观,这里我们选择销量大于100的商品。

代码如下:

由图表及数据可知:

1. 销量100以上的商品仅占3.4% ,其中销量100-200之间的商品最多,200-300之间的次之;

2. 销量100-500之间,商品的数量随着销量呈现下降趋势,且趋势陡峭,低销量商品居多;

3. 销量500以上的商品很少。

【5】. 不同价格区间的商品的平均销量分布:

代码如下:

由图表可知:

1. 价格在1331-1680之间的商品平均销量最高,951-1331之间的次之,9684元以上的最低;

2. 总体呈现先增后减的趋势,但最高峰处于相对低价位阶段;

3. 说明广大消费者对购买沙发的需求更多处于低价位阶段,在1680元以上 价位越高 平均销量基本是越少。

【6】. 商品价格对销量的影响分析:

同上,为了使可视化效果更加直观,这里我们结合自身产品情况,选择价格小于20000的商品。

代码如下:

由图表可知:

1. 总体趋势:随着商品价格增多 其销量减少,商品价格对其销量影响很大;

2. 价格500-2500之间的少数商品销量冲的很高,价格2500-5000之间的商品多数销量偏低,少数相对较高,但价格5000以上的商品销量均很低 没有销量突出的商品。

【7】. 商品价格对销售额的影响分析:

代码如下:

由图表可知:

1. 总体趋势:由线性回归拟合线可以看出,商品销售额随着价格增长呈现上升趋势;

2. 多数商品的价格偏低,销售额也偏低;

3. 价格在0-20000的商品只有少数销售额较高,价格2万-6万的商品只有3个销售额较高,价格6-10万的商品有1个销售额很高,而且是最大值。

【8】. 不同省份的商品数量分布:

代码如下:

由图表可知:

1. 广东的最多,上海次之,江苏第三,尤其是广东的数量远超过江苏、浙江、上海等地,说明在沙发这个子类目,广东的店铺占主导地位;

2. 江浙沪等地的数量差异不大,基本相当。

【9】. 不同省份的商品平均销量分布:

代码如下:

热力型地图

http://www.aibbt.com/a/18575.html

利用Python爬虫爬取淘宝商品做数据挖掘分析实战篇,超详细教程相关推荐

  1. python爬取淘宝商品做数据挖掘

    作业要求:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/3159 项目内容: 本项目选择 淘宝商品类目:零食 数量:一共100页,44 ...

  2. python爬取淘宝商品做数据挖掘_Python 3爬虫 数据清洗与可视化实战 Python数据抓取技术 python3网络爬虫教程书籍 运用Python工具获取电商平台页面数据挖掘书籍...

    A8 书    名:Python 3爬虫 数据清洗与可视化实战 作 译 者:零一,韩要宾,黄园园 出版时间:2018-03 千 字 数:200 版    次:01-01 页    数:212 开   ...

  3. python爬虫 — 爬取淘宝商品信息

    (一)确定需要爬取的信息 在爬取前首先确定需要获取的信息,打开taobao,在搜索框中输入,需要获取的商品的信息,比如ipad,点击搜索 就可以看到许多的ipad,选择其中的一款商品,比如第一个 可以 ...

  4. python爬虫爬取淘宝商品并保存至mongodb数据库

    使用工具介绍 python3.8 selenium(请确保你已经成功安装了谷歌驱动chromedriver) mongodb数据库 mongo-compass 谷歌浏览器 分析请求链接 打开淘宝首页的 ...

  5. Python + selenium 爬取淘宝商品列表及商品评论 2021-08-26

    Python + selenium 爬取淘宝商品列表及商品评论[2021-08-26] 主要内容 登录淘宝 获取商品列表 获取评论信息 存入数据库 需要提醒 主要内容 通过python3.8+ sel ...

  6. python淘宝爬虫_python爬虫爬取淘宝商品信息

    本文实例为大家分享了python爬取淘宝商品的具体代码,供大家参考,具体内容如下 import requests as req import re def getHTMLText(url): try: ...

  7. python电商数据挖掘_利用Python爬取淘宝商品并数据挖掘与分析实战!此乃大型项目!...

    项目内容 本案例选择>> 商品类目:沙发: 数量:共100页 4400个商品: 筛选条件:天猫.销量从高到低.价格500元以上. 项目目的 1. 对商品标题进行文本分析 词云可视化 2. ...

  8. Python requests爬取淘宝商品信息

    作者:achen 联系方式:wh909077093 这里记一下大概的思路以及实现方法,有基础的小伙伴看了基本就能实现了,如果有业务需要可以联系我哈哈哈哈哈哈 本文代码参考猪哥66的思路 项目内容 指定 ...

  9. python简单爬取淘宝商品信息

    爬取淘热卖商品"泡面"的信息,包括商品名称,店铺,链接,付款人数,价格等,用csv保存 import requests import csv import time import ...

最新文章

  1. -bash: fultter: command not found
  2. java怎么做简易的游戏,Java小项目之《简易桌面小游戏》
  3. flex for java_Java和Flex整合报错(四)
  4. linux安卓双系统板子,安卓迷你 PC 主机只要 109 美元,支持 Android 和 Linux 双系统...
  5. 想学好Java开发,你要做到这三点
  6. 网络流-EK求最大流
  7. WS_EX_COMPOSITED是个BUG?
  8. POJ3764-The xor-longest Path【Trie(字典树)】
  9. 分布式一致性算法2PC和3PC
  10. atomic一定线程安全吗
  11. promise 应用实例
  12. 简易计算器--带小数点--单片机课程设计
  13. 三菱FX3U-1PG模块与台达A2伺服连接用法
  14. photoshop插件开发
  15. 山下英子(日)《断舍离》读书笔记
  16. 保留至百位并且向上取整 例如:125631 >>125700
  17. Pandas DataFrame.columns用法及代码示例
  18. 计算机主硬盘隐藏分区大小,容量不翼而飞 解密四类硬盘空间隐藏占用(组图)
  19. NUC 折腾笔记 - Linux 系统篇
  20. linux命令英文单词缩写,linux常用命令的英文单词缩写

热门文章

  1. boost之内存管理
  2. Anaconda环境的创建、激活、删除和管理
  3. 技术需求文档,应当这么写!
  4. 离散化/线段树 (POJ - 2528 Mayor's posters)
  5. VR企业宣传满足宣传需求给客户强烈的真实感
  6. python小论文范文3000字_完整的论文范文3000字
  7. 歌唱大赛选手成绩计算
  8. JS一元运算符(前++,后++)详解
  9. Maestro 薛定谔软件简单分子对接案例
  10. 杰理-watch-手表-AC701-双击屏幕唤醒