Python数据分析:某产品国产手机有多便宜?是不是太贵了你买不起?

发布时间:浏览:12

大家好,今天小编来为大家解答以下的问题,关于Python数据分析:某产品国产手机有多便宜?是不是太贵了你买不起?,这个很多人还不知道,现在让我们一起来看看吧!

数据层首先会通过Python爬取WEB端的网页数据,然后解析爬取的数据并存储到MYSQL数据数据库中。最后应用层的数据处理、数据计算统计、图表可视化等工作都是由我们的FineBI工具完成的。

操作步骤

1.引入相关Pyhon库包,编写MySQL数据存储函数

首先新建一个python项目,引入爬取网页数据并写入MySQL数据库所需的四个相关库包pandas、re、request、pymysql:

进口熊猫

进口再

导入请求

导入pymysql

def ExecuteSQL(title,price,sales): #将数据写入mysql数据库

conn=pymysql.connect(host='xxx.xxx.xxx.xx', port=xxxx, user='xxxx', passwd='xxxx', db='xxxx', charset='utf8') #对应xx参数的值改为你自己数据库的值即可

光标=conn.cursor()

#cursor.execute('CREATE TABLE MOBILE_DATA(brand varchar(100),价格双倍,销量int)')

# 光标.execute('删除表移动数据')

cursor.execute('INSERT INTO MOBILE_DATA(品牌,价格,销量) VALUES (\'%s\',%d,\'%d\')'%(title,price,sales)) #执行SQL数据插入

print('数据插入成功!')

打印(标题、价格、销量)

conn.commit() #提交执行命名

cursor.close() #释放游标对象

conn.close() #释放数据库连接对象

2.获取网页数据

然后如下图所示,定义模拟浏览器访问头的值,通过编写Python代码使用requests获取“小宝”平台网页中的请求信息:

for page in range(1,7): # 循环页面,共7页

url='https://s.taobao.com/search?q=%E6%89%8B%E6%9C%BAimgfile=commend=allssid=s5-esearch_type=itemsourceId=tb.indexspm=a21bo.2017.201856-taobao-item.1ie=utf8initiative_id=tbindexz_20170306cps=yesppath=2176%3A136877751%3B2176%3A3244779%3B2176%3A91621%3B2176%3A39862256%3B2176%3A28247'

header={'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML,如Gecko) Chrome/63.0.3239.84 Safari/537.36',

'cookie':'thw=cn; t=be73ea5ec1ffbeb254d0a3535dd00415; cna=HqWrEpIZeG4CAbYSAEIb6bav; hng=CN%7Czh-CN%7CCNY%7C156; miid=596160490770762658; lgc=%5Cu58 15%5Cu843D%5Cu4E4B%5Cu6CEAa; tracknick=%5Cu5815%5Cu843D %5Cu4E4B%5Cu6CEAa; tg=0; uc2=wuf=https%3A%2F%2Ftrade.tmall.com%2Fdetail%2ForderDetail.htm%3Fbiz_order_id%3D104827474284154168%26forward_action%3D; x=e%3D1%26p%3D*% 26s%3D0%26c%3D0%26f%3D0%26g%3D0%26t%3D0%26__ll%3D-1%26_ato%3D0; uc3=sg2=VWxidJMT8gLCYBc%2BxP5FJdYe9%2FXfUvq2%2Byf0cFWq90Q%3Dnk2=1RSXayUHM 0Slid2=UUpkvTJ9k5HsSA%3D% 3Dvt3=F8dBzLbVzPYkPml1NZk%3Dlg2=W5iHLLy FOGW7aA%3D%3D; uss=VvioJOfdaT365u5YugXSKrRnG47jUQQG9UQvstfUu5fjcHD0zxGQLEmn; _cc_=VFC%2FuZ9ajQ%3D%3D; mt=ci=67_1; tk_trace=oTRxOWSBNwn9dPy4KVJVbutfzK5InlkjwbWpxHegXyGxPdWTLVRjn23RuZzZtB1ZgD6Khe0jl%2BAoo68rryovRBE2Yp933GccTPwH%2FTbWVnqEfudSt0ozZPG%2BkA1iKeV v2L5C1tkul 3c1pEAfozBoBsNsJySQJwqIKz2kX83uPP5e4iE9t1ZpHdHZkk218jfUutkisiegrGMtBctY%2B2vMCmzCRVhIqleLIl%2BRRQHs4ekw3wNcZhDfwkkQzp9RF7kjYiNbN LTbo2mRCr3Wf97aW %2FfC72uuEf9Tcc6cNT9QCiB0y7NxqzS4M5NvMkxl5KoKbA%2BorLqu5Y9jpCfT31RlA%3D%3D; cookie2=1c16eb46ef00c015dd101f731c258d77; _tb_token_=8de4c4560b63; v=0; alitrackid=www.taobao.com; lastalitrackid=www.taobao.com; swfstore=107855; JSESSIONID=ED726367865542 B7BA84D801D1C72812; isg=AhcXOlKpAS4SKIXa0x_6AhsZpovNTcSrwSKOp2lEKOZNmDfacSx7DtWyjg59; uc1=cookie14=UoTdf1DFLRnICg%3D%3D',

'接受':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',

'路径':'/搜索?q=%E6%89%8B%E6%9C%BAimgfile=commend=allssid=s5-esearch_type=itemsourceId=tb.indexspm=a21bo.2017.201856-taobao-item.1ie=utf8initiative_id=tbindexz_20170306 '} #定义模拟浏览器访问头的值

html=requests.request('GET', url, headers=header) #网页请求信息获取

3.HTML标签解析(Script格式)

这时我们就可以在华为、小米、OPPO、VIVO四大国产手机中查看网页信息。我们可以使用浏览器自带的F12工具查看相关代码,发现“某宝”的商品数据信息原来是存储在Script变量中的。中间。

接下来我们只需要使用re根据指定的标签格式查找并获取整个网页的数据信息,然后将对象存储在data中即可:

ren=re.compile(''标题':'(.*?)','pic_url':'(.*?)','价格':'(.*?)','trace':'(. *?)','month_sales':'(.*?)'')

数据=re.findall(ren, html.text)

4.MySQL数据存储

解析数据后,将解析后的数据写入MySQL数据库:

data2=pandas.DataFrame(data) #将数据对象转换为DataFrame类型,方便处理

for rows in range(1,data2.shape[0]): #循环遍历DataFrame中的所有数据行

ExecuteSQL(data2.values[rows][0],float(data2.values[rows][2]),int(data2.values[rows][4])) #MySQL数据存储

count=count+1 #计数器累加

print('恭喜,数据已全部抓取完毕,共有%d条数据!'%(count))

循环查阅“谋宝”平台上华为、小米、OPPO、VIVO四大国产手机的相关信息数据,共7个页面,共282条数据。

5. 验证数据输入数据库

直接通过FineBI提供的数据配置功能,添加SQL数据集(或者直接添加表),检查验证我刚刚爬取并录入数据库的数据是否已经成功录入MySQL。

如下图所示,Python确实完成了它的使命。我想要的“小宝”平台上的华为、小米、OPPO、VIVO四大国产手机的数据已经成功写入到我的MySQL数据库中。

6. 可视化分析

分为几个维度:

国内四大手机品牌整体销量。国内手机销量排名。销售重点是型号。国内手机销量排名。销售重点是型号。涉及的指标也比较简单。您基本上可以通过FineBI 拖放数据字段来可视化它们。

下面动画以国产四大手机销量统计的词云图为例,简单展示一下可视化过程。这同样适用于其他人。

(如果想按照各大手机品牌进行统计,可以直接使用FineBI自定义品牌字段的分组)

分析结果

1、淘宝平台上,华为、小米、OPPO、VIVO四大国产手机总销量751万台,总销售额142.97亿。其中,华为品牌占总销售额的44.40%,淘宝销售额达到61.84亿,小米、VIVO、OPPO其他三个品牌分别占总销售额的28.98%、17.90%、8.72%。

2、从国产四大手机平均价格来看,VIVO和华为分别以2167元和2021元的价格位居前两位。 OPPO和小米以均价分别为1979元和1502元排名第三和第四。少量。小米手机价格相对便宜,但市场占有率还不错,仅次于华为;而VIVO和OPPO这两款国产手机一直被广大用户称为“厂姐手机”,但通过李易峰、彭于晏、鹿晗等明星、小鲜肉以及各大媒体渠道的积极代言,吸引了无数粉丝购买,也抢占了华为手机市场的很大份额。

最后

网络爬虫数据抓取,Python首屈一指。但对于数据统计和可视化呈现来说,操作方便、拖拽操作的FineBI对于数据分析新手来说绝对是一个很好的切入点。

用户评论

怪咖

每次看到"国产机"这几个词就忍不住想看一看效果怎么样!这篇博文正好满足我的好奇心~ 特别是比较价格的部分,真是让我眼界开阔呀,原来国产机真的可以这么实惠!

    有20位网友表示赞同!

颓废i

最近一直想换台新电脑,这款官方数据分析的可信度还挺高的,毕竟Python还是主流的编程语言。不过我还是比较关注使用体验和做工呢!

    有7位网友表示赞同!

你很爱吃凉皮

这篇文章太让我震惊了!我前段时间刚花了大价钱买了一台进口品牌的笔记本电脑,结果现在想想居然可以用相近性能国产机花费更少的价格,感觉自己买贵了好多????

    有7位网友表示赞同!

空巷

数据分析的结论确实很明显,国产机的价格非常具有优势。不过也提醒大家要注意品牌质量和售后服务,毕竟便宜的不一定好用...

    有11位网友表示赞同!

花花世界总是那么虚伪﹌

这篇文章写的挺不错,有数据支持,不像一些博主吹捧国产机的时候并没有实际依据。希望以后能看到更多这样的客观评测文章!

    有11位网友表示赞同!

青衫负雪

作为一名程序员,我很想知道这款国产机的性能如何,主要还是要看CPU和内存的配置是否能够满足使用需求呢!希望能看到这篇博文的后续内容,对国产机进行更深入的测评!

    有17位网友表示赞同!

别伤我i

买了国产机的朋友们都说说你们的体验吧?这篇文章让我感觉国产机性价比的确很高...

    有16位网友表示赞同!

放肆丶小侽人

进口品牌的电脑和国产机器还是有很大的差距啊,尤其是性能方面。不知道国产机在长时间使用后会不会出现问题?希望后续评测能够针对这个问题进行分析!

    有18位网友表示赞同!

糖果控

数据分析说的很有道理,价格实惠是国产机的最大优势,而且现在越来越多的国产品牌注重品质,我觉得值得入手!

    有13位网友表示赞同!

七级床震

感觉这个博主有点吹捧国产机啊,如果客观地说,进口品牌的电脑在某些方面还是比国产机器优秀。比如稳定性和售后服务,这些都是需要考虑的因素!

    有16位网友表示赞同!

绳情

国产机越来越便宜了,但就怕质量跟不上啊!希望以后国产品牌能够注重产品的品质和细节,这样才能真正赢得消费者信任!

    有6位网友表示赞同!

巷陌繁花丶

这篇文章让我对国产机有了新的看法。数据说话,价格实惠确实是国产机的优势,我还是非常期待国产品牌的进一步发展和创新!

    有11位网友表示赞同!

南宫沐风

数据分析确实很有参考价值啊,原来我买笔记本的时候被贵的价格忽悠了!国产机性价比高,还是值得考虑的...

    有14位网友表示赞同!

在哪跌倒こ就在哪躺下

觉得博主分析得比较全面,不仅对比了价格差异,还提到了品牌的售后服务和产品质量。这份客观的态度很让人欣赏!

    有20位网友表示赞同!

单身i

我更注重产品的使用体验和性能,单纯的性价比对我来说不是最重要的因素。希望国产机在未来的发展中能够更加完善!

    有8位网友表示赞同!

各自安好ぃ

数据分析只能作为参考,最终还是要根据自己的实际需求选择合适的笔记本电脑。国产机虽然便宜,但也需要考虑自身的功耗、散热力和售后服务等综合因素!

    有8位网友表示赞同!

见朕骑妓的时刻

其实我一直相信国产机器的发展潜力很大,价格实惠加上不断提升的品质,我觉得国产机未来一定有很大的发展空间!

    有17位网友表示赞同!

(り。薆情海

我还是建议大家在购买电脑之前做好充分的功课,多比较不同品牌的型号和配置,找到最适合自己的产品!

    有19位网友表示赞同!

热点资讯