程序员,你喜欢抽哪种香烟?(python数据分析)
程序员文章站
2024-01-03 14:52:28
大家好,今天给大家分享一篇关于国产香烟分析的文章,主要用python爬取“烟悦网”数据,并作详细分析,带你看看香烟的种类及价格现状,放一张词云图: 1.爬取数据1.1 网站分析 进入主页,烟悦网网址:https://www.yanyue.cn/tobacco 我们可以发现,所有香烟品牌的名字及对应网 ......
大家好,今天给大家分享一篇关于国产香烟分析的文章,主要用python爬取“烟悦网”数据,并作详细分析,带你看看香烟的种类及价格现状,放一张词云图:
1.爬取数据1.1 网站分析
进入主页,烟悦网网址:https://www.yanyue.cn/tobacco
我们可以发现,所有香烟品牌的名字及对应网址(href)直接在首页内,是一个简单的静态网页。随机进入某香烟品牌的主页:
发现内含该品牌下不同种类的香烟,包含名称、类型、焦油量及价格等信息。打开流量分析工具,分析找到该数据接口:
是1个json格式的文件,再来看看它的请求参数:
有两个变量,分别是brandid=23(每个香烟品牌都有1个数字代表,在上一步网页中可以找到),page=1(页码),这两个变量都很好分析。现在网站上的逻辑关系基本已经捋顺了。1.2 爬取数据获取每个品牌的名字及对应网址:
构造每个品牌的主页网址,计算总页数:
根据总页数,把该品牌所有香烟种类的数据爬下来:
将数据保存到表格中:
2.数据分析本次数据分析主要通过pyecharts实现2.1 分析香烟种类及数量
从上图可以看出:·香烟品牌总共有106种·香烟种类一共有2390种2.2 画出香烟名字种类词云图
·根据词的大小可以看出该品牌下香烟种类的数量,看来是黄鹤楼最多2.3 画出香烟种类数量排名前十柱状图
果然,种类最多的是黄鹤楼,一共有197种,感觉这几类烟都挺常见的2.4 画出价格分布柱状图主要根据每种价格对应的种类数量画图(例如20元的香烟有161种)
这个图看起来不那么整齐,但是仍可以获得一些信息:
·20元的价格种类最多,总共有161种;·最便宜的烟价格为1.5元,有6种,像北戴河(软烤)、芙蓉(软橙)、甲天下(软)等,不知道能不能买到,但应该是很多人的回忆;·最贵的烟价格为250元,总共有2种,分别是熊猫(听50支)、中华(听50支)。2.5 画出不同价格段香烟种类的饼状图首先把价格按如下方式分段:
然后统计数量并画图:
从图可以看出,10-20元的烟种类最多,其此是0-10元和20-30元,将近一半的烟都在20元以下。
2.6 最后画1张当月最受欢迎的香烟top10排名图
排名是根据网站上每个牌子香烟的访问量计算来的,看来荷花非常受欢迎啊。
吸烟有害健康,希望广大烟民程序员尽快戒烟哦!
本文所有数据均来自网络,仅为学习交流使用,不作为其他参考。