本文主要是介绍利用python抓取ZOL手环的参数数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
因为科研需要,在做产品设计算法实例验证的时候需要大量的产品数据,但是现阶段产品数据不足导致无法做验证,因为之前有写过抓取豆瓣电影的数据,所以这篇文章和之前的大同小异,主要有以下功能:
- 实现了网页内部自动翻页
- 自适应地抓取该网页上指定位置的数据,对于缺失数据的自动跳过
talk is cheap, show me the code!
一开始想用xpath来写,因为感觉哪个比beautifulsoup更加高效,但是后来发现ZOL网站的标签并不是很规则,存在多种形式的描述,所以如果使用xpath进行定位的话会导致大量数据流失,然后又看到网络上又大神利用Scrapy来抓取ZOL手机参数相关的博客,想着自己也可以尝试一下用Scrapy来抓取。但是后来觉得需要配置太多东西,加上其他方面对数据需求比较赶,所以就直接采用较为简单和熟悉的beautifulsoup来抓取。
zol抓取数据逻辑
由于进入zol之后是是一个列表式的产品页面(http://detail.zol.com.cn/intelligentbracelet/),具体产品的数据在更下一层,所以在写爬虫时具有翻页功能时必须的,具体翻页逻辑如图所示:
首先是进入主界面,然后选中某一个产品链接(图中step 1,如获取接“href=”/IntelligentBracelet/index1183577.shtml””),获得连接之后加上zol的主连接(http://detail.zol.com.cn/intelligentbracelet/)就可以跳转到下一个界面,同样的方法通过获取该产品主页的参数中的href连接加上主连接就可以跳转到所需要抓取的数据的那一栏(step3),然后再抓取该栏下所需的数据即可。
具体代码
由于代码内部都会自带解释性语言,故不再细描述,具体看代码吧!
# -*- coding: utf-8 -*-
"""
Created on Thu Apr 26 19:48:43 2018@author: cxjoker
功能:抓取zol上智能手环的参数数据
"""# -*- coding:UTF-8 -*-
from bs4 import Bea
这篇关于利用python抓取ZOL手环的参数数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!