爬取 20W 猫猫数据,来了解一下喵喵~-程序员宅基地

技术标签: python  数据分析  nagios  数据挖掘  数据可视化  

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

来日绮窗前,寒梅著花未?

前言

最近知道身边有许多朋友都养了猫,于是对猫猫有点兴趣了,于是找到了一个专门交易猫猫的网站-猫猫交易网:

http://www.maomijiaoyi.com/

从此网站上爬取 20W 条猫猫交易数据,以及爬取了猫猫品种介绍的数据,以此来了解一下猫猫。

获取数据后小编从以下维度进行探索性分析:

1、猫猫都有哪些品种,词云图

2、原产地,世界地图

3、体型占比,圆环图

4、外观描述词云

5、交易猫猫分布地图

6、交易品种占比树状图

7、每种品种平均价格排名,条形图

8、浏览次数是否跟价格成正比,散点图

9、年龄分布,柱状图

10、价格是否与年龄有关,箱型图

11、价格是否与预防有关,箱型图

12、价格是否与异地运费有关,箱型图

13、价格是否与是否纯种有关,箱型图

14、价格是否与能否视频有关,箱型图

数据获取

打开猫猫交易网,先爬取猫猫品种数据,打开页面可以看到猫猫品种列表:

但只显示了每种猫猫的品种名,参考价格,这些数据还不够,所以点进去,爬取更加详细的数据。

品种名,参考价格,中文学名,基本信息,性格特点,生活习性,优缺点,喂养方法等:

爬取的代码不算难,但这次特意加了进度条功能,可以显示爬取进度:

以上就是猫猫品种的数据来自哪里,接下来是获取猫猫交易数据,进入到买猫卖猫页面:

滑到最底下,可以看到显示有多少页数据,共多少条,此时显示的是 31W,小编使用多进程只爬取了 20W:

当然,爬取的数据是进入详情页后进行爬取的,包含价格,标题,在售只数,猫龄,预防等:

由于数据,太多,小编分开爬取的,先爬取每一页中的所有猫猫详情交易链接的 url 保存进 csv,在读取 csv 一次爬取每条交易数据,于是乎 20W 数据的来源就有了。

数据探索

在这之前呢,小编对猫猫的品种不是很清楚,只知道几个经常听见布偶猫,橘猫这些。

小编于是画个词云,来直观的瞅一瞅猫猫还有哪些品种:

了解了猫猫品种后,小编想知道这些品种的猫猫原产地都是来自哪里,看了看数据,除了橘猫是世界各地都有的,其他品种的猫猫大多分布在这些国家呢:

加拿大,美国,英国,古埃及,泰国,阿富汗这些国家是大多数猫猫品种们的原产地呀。

那猫猫品种的体型分布如何呢,我们一起来看看呗:

在所有品种中,大型的只有一个品种,小编把数据选出来看了看,原来是布偶猫呀,其他品种都是中小型的类型,那以后看见体型比较大的,可以先联想到布偶猫咯~

猫猫们很多品种都很可爱呀,大家一般都喜欢从什么角度形容猫猫呢:

从颜色方面,蓝色,黑色,红色形容猫猫的次数最多;性格方面,对人友善;观看角度方面从侧面看,后面看最合适。

接下来对猫猫品种有一定了解后,一起来看看猫猫交易的数据吧~

首先来看看猫猫交易主要分布在哪些区域呢:

四川,重庆,广东是猫猫交易最多的省份呀,或许是这些省份的人更喜欢猫猫吧,当然只是小编猜的哈~

那么在交易的猫猫中,主要都是哪些品种在交易呢:

橘猫最多呀,看来之前原产地说橘猫分布在世界各地,换句话可以理解为橘猫数量最多,还是有原因的呀~

其次是咖啡猫,布偶猫,英短蓝白猫。。。。。

买猫当然还是得看看价格,对于每种品种的猫猫来说,买的时候有个平均价格参考,心中有个数才好把握吧:

布偶猫名列前茅啊,在它之上还有一个缅因猫均价更高一些,小编不太了解这猫,不过布偶猫倒是觉得非常可爱。

这些猫猫一般猫龄是多大呢?一起来看看吧:

主要分布在 1-9 个月之间,都是刚出生未满一岁的小猫咪呀,一般这种小猫咪是最可爱的时候呢。

那在这些数据中,影响猫猫价格的因素到底是哪些呢?是否存在一些因素与价格相关呢?

小编先从浏览次数与价格进行分析,浏览次数一定程度上反映了猫猫的热度,所以绘制散点图:

从结果上看浏览次数与价格并不存在相关性。

那时候跟猫猫年龄有关呢?通过箱型图来查看一下:

可以看到年龄与价格是相关的,是影响价格的一个因素,1-9 个月的猫猫价格分布在 500-1700 之间,而大于 9 个月的猫猫价格都在 1300 以上,且价格分布明显不同。

在确定与年龄有关后,是否与预防针次数有关呢?

预防针次数也是与价格相关的,0针,1-2针,3针的价格区间分布明显不同,多以预防针次数也是一个影响因素。

是否包邮,是否能视频看猫猫,是否纯种都是影响价格的因素,且三者存在共线性:

所以影响价格的因素猫猫价格的相关因素有年龄,预防次数,邮费,是否纯种,能否看猫猫视频。

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/pdcfighting/article/details/113821087

智能推荐

Android音视频技术1--Android SurfaceView使用_surfaceview 首帧渲染回调-程序员宅基地

文章浏览阅读283次。开篇提到视频数据源渲染提到过SurfaceView,SurfaceView是Android提供的渲染图形类。一.SurfaceView简介Android平台图形渲染类。 主要由于游戏场景,适合频发绘制刷新的View。 Surfaceview可用于工作线程刷新View。 普通View为被动刷新,主动刷新则选择SurfaceView。二.SurfaceView与View的区别Sur..._surfaceview 首帧渲染回调

SpringMVC_@ControllerAdvice_springmvc controlleradvice-程序员宅基地

文章浏览阅读133次。SpringMVC_@ControllerAdvice一.全局异常处理二.全局数据绑定三.全局数据预处理新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表F..._springmvc controlleradvice

[LQR简要快速入门]+[一级倒立摆的LQR控制]-程序员宅基地

文章浏览阅读8k次,点赞34次,收藏127次。[LQR简要快速入门]+[一级倒立摆的LQR控制]1. 什么是LQR2. 公式含义3. 倒立摆的建模3.1 线性化3.2 状态空间建立4. LQR算法实现5. MATLAB代码仿真6. 优缺点1. 什么是LQRLQR是一种最优控制算法,简要讲即为寻求一种算法,使得在满足系统稳定性能的同时,系统在达到稳定的过程中消耗的能量也最少(具有实际意义)。利用最优控制理论的知识可以知道,既然要达到两个指标(1. 性能;2. 能量)的最优,可以很容易列出积分形式的最优指标:J=∫0∞(xTQx+uTRu)dt(1_lqr

anaconda: import numpy报错:ImportError: DLL load failed: 找不到指定的模块_anaconda import numpy 模块错误-程序员宅基地

文章浏览阅读795次。anaconda: import numpy报错:ImportError: DLL load failed: 找不到指定的模块在使用vscode 和anaconda时,在vscode中 import numpy,出现了以上报错可以查看是否未添加anaconda的环境变量具体参考如下文章,如何配置环境变量https://blog.csdn.net/Buster001/article/details/90025712..._anaconda import numpy 模块错误

c钩子库Minhook的使用_minihook使用 vs-程序员宅基地

文章浏览阅读5.4k次。简述最近在学习钩子库,逛了一下gay hub,发现了一个项目minhook,纯钩子库,甚合我意,就研究了一下,写了2个例子。后续打算研究一下这个钩子库的源代码,了解一下具体怎么实现的。例子例子就不贴到这上面了,给出github地址:minhook钩子库的使用示例例子vs2008编译通过,使用的dll,lib文件都是从minhook项目编译而来。minhook项目github地址..._minihook使用 vs

python 发布包_如何将自己的Python包发布到PyPI-程序员宅基地

文章浏览阅读150次。以前写过一篇类似的文章: 如何打包自己的项目并且发布到pypi上,不过由于PyPI进行了一些更新,因此旧方法不大适用了。趁端午有时间,想把haipproxy的客户端发布到PyPI,以改进用户体验,因此这次又尝试了如何将Python包发布到新版本的PyPI上。编写setup.py以haipproxy为例,它的setup.py如下from os import path as os_pathfrom s..._如何将python包推送到pipy

随便推点

RCE远程命令执行漏洞挖掘思路_rce漏洞挖掘-程序员宅基地

文章浏览阅读3.2k次,点赞3次,收藏19次。RCE漏洞存在的地方包括:在url参数上,文件下载处,在查看图片,查看文件等地方在文件删除上,SSRF可能存在的地方,变量参数提交的地方等_rce漏洞挖掘

[数据仓库]分层概念,ODS,DM,DWD,DWS,DIM的概念_ods层-程序员宅基地

文章浏览阅读10w+次,点赞118次,收藏518次。ODS是什么?ODS 全称是 Operational Data Store,操作数据存储.“面向主题的”,数据运营层,也叫ODS层,是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的 ETL 之后,装入本层。本层的数据,总体上大多是按照源头业务系统的分类方式而分类的。但是,这一层面的数据却不等同于原始数据。在源数据装入这一层时,要进行诸如去噪(例如有一条数据中人的年龄是 300 岁,这种属于异常数据,就需要提前做一些处理)、去重(例如在个人资料表中,同一 ID 却有两条重复_ods层

Lucene介绍与使用-程序员宅基地

文章浏览阅读9.1w次,点赞237次,收藏928次。1、了解搜索技术1.1 什么是搜索简单的说,搜索就是搜寻、查找,在IT行业中就是指用户输入关键字,通过相应的算法,查询并返回用户所需要的信息。1.2 普通的数据库搜索类似:select * from 表名 where 字段名 like ‘%关键字%’例如:select * from article where content like ’%here%’结果: where here..._lucene

一个简单的协议定制_parseline-程序员宅基地

文章浏览阅读262次,点赞8次,收藏4次。socket、序列化和反序列化、自定义协议、一般服务器设计原则和各种场景_parseline

【RT-Thread】学习日记之系统节拍Tick_rt_tick_get-程序员宅基地

文章浏览阅读715次。RT-Thread 学习日记之系统节拍Tick_rt_tick_get

MySQL数据库——高级查询语句_mysql高级查询语句-程序员宅基地

文章浏览阅读5k次,点赞17次,收藏94次。数据库是用来存储数据,更新,查询数据的工具,而查询数据是一个数据库最为核心的功能,数据库是用来承载信息,而信息是用来分析和查看的。例:SELECT A.Store_Name Store, SUM(A.Sales) “Total Sales” FROM fxk003 A GROUP BY A.Store_Name;例:SELECT Store_Name, SUM(Sales) FROM fxk003 GROUP BY Store_Name HAVING SUM(Sales) > 1500;_mysql高级查询语句

推荐文章

热门文章

相关标签