Advertisement

python 抓取网页数据

阅读量:

利用python进行简单的数据分析 在中关村在线进行抓取数据,所使用的网页是这个页面http://detail.zol.com.cn/cell_phone_index/subcate57_0_list_0-1000_0_7_2_0_1.html

1、首先要进行分析网页的HTML,我们所要抓取的数据是根据销量排名的手机信息,所以主要需要抓取手机的型号、价格、销量,按照“由小见大”的方法来获取所需要的html信息,如下图所示:

由上可以看出手机型号所在的HTML标签是“h3”,手机价格是在div中的class属性为“price-row”,手机的评价在class为“comment-num”中

2、分析完了HTML代码,接下来就是利用beautifulsoup进行爬虫

具体代码如下:








在这个代码中遇到的问题:

findall()方法返回的是一个列表(select方法筛选也是如此),find()方法直接返回结果,所以在搜索评价时就用到了find方法。find里面的参数,试过用直接用标签、正则表达式都没有出结果,所以最后采用attrs 参数定义一个字典参数来搜索包含特殊属性的tag

3、结果分析:

结果抓取的数据如下所示:

柱状图:

**
**

曲线图:

**
**

对以上结果进行分析:

销量:

红米note拥有最高的销量,排名第二的是与它同等价位的魅蓝note,这两款是最近几年手机市场的黑马;而其中大神的F1、F2销量都进入到了前面的位置,说明他的技术用户的认可度还是比较高的;作为老牌的品牌手机华为、苹果、诺基亚虽然销量靠后,但是仍然占据很大的市场的

价格:

作为销量第一第二的红米和魅蓝价格一样,且比平均价格高不了多少,说明这两款手机除了技术让人认同之外,定价也属于合理的让人能接受的;而作为低价的大神系列的手机同样也具有较高的销量,也能说明低价的路线较容易让人接受;而最高价的华为销量也靠前,说明自身的技术是让人信服的

总结:

由上可知,红米现在的市场非常好,而其处于缺货状态却仍然占据销量首位,那么他接下来的产品就拥有了一定的市场;苹果4s如今还占据有一定的市场,说明苹果的手机公众认可度比较高,由此可知,新一代手机具有很大的商业市场;除此之外,低价的手机也总能让人接受,如大神F系列的手机。销量前十的手机价格都不超过1000,也正反映了国民的消费水平,证明了低价手机所具有的市场占有力,同时也反映了国产手机的价格水平。

**
**

全部评论 (0)

还没有任何评论哟~