八爪鱼·云采集服务平台
www.bazhuayu.com
xpath入门教程以及定位元素实例
本文用来讲解xpath的入门基础,本教材是xpath入门2,建议大家从入门1教程开始学习
Xpath的教程适合对八爪鱼已经有一些基础的用户来学习。 示例地址
/tutorial?type=0&page=0&tag=è??é??&version=other
Xpath:是一种路径查询语言,简单的说就是利用一个路径表达式找到我们需要的数据位置。 Html:超文本标记语言,是用来描述网页的一种语言。主要用于控制数据的显示和外观。HTML文档也被称为网页。
Xpath专用于xml中沿着路径查找数据用的,但是八爪鱼采集器内部有一套针对Html的Xpath引擎,使得直接用Xpath就能精准的查找定位网页里面的数据。
xpath入门2-图1
八爪鱼·云采集服务平台
www.bazhuayu.com
例如下图通过火狐的firebug、firepath查看网页源码。查看方法参考“xpath入门1”教程
xpath入门2-图2
完整的HTML文件至少包括标签、
标签、Html标签
八爪鱼·云采集服务平台
www.bazhuayu.com
作为开始和结束的标记由尖括号包围的关键词,比如 标签对中,第一个标签是开始标签,第二个标签是结束标签 元素
HTML的网页内容是由元素组成的,从开始标签到结束标签的所有代码。 元素的开始和结束都使用标签作为开始和结束的标记 节点
所有事物都是节点 整个文档是一个文档节点 每个 HTML 元素是元素节点 HTML元素内的文本是文本节点 每个 HTML 属性是属性节点 注释是注释节点
Html常见标签
八爪鱼·云采集服务平台
www.bazhuayu.com
文本标题标签,最大的标签。从1到6,有6层选择 段落标记标签 可定义文档中的区域或节、可以把文档分割为不同的部分,是一个块级元素
用于搜集用户信息可以是文本字段、复选框、按钮等等 向网页中嵌入一幅图像,从网页中链接图像
例如//a就代表能匹配到这个网页中所有可以点击的链接
八爪鱼·云采集服务平台
www.bazhuayu.com
xpath入门2-图3
Html常见属性
属性是用来修饰标签的,放在开始标签里面 class
规定元素的类名,大多数时候用于指定样式表中的类 id
唯一标识一个元素的属性,在html里面必须是唯一的 href
八爪鱼·云采集服务平台
www.bazhuayu.com
指定超链接目标的url src
图像文件的url
例如//span[@class='itemWithIcon calendar']通过class这个属性就匹配到了当前页面所有的日期。
xpath入门2-图4
Xpath常见写法 text() 文本定位位置
八爪鱼·云采集服务平台
www.bazhuayu.com
例如//a[text()='下一页 ? ']
通过源码中文本“下一页 ?”就匹配到了,这个text()是需要精确匹配源码中的文本的
xpath入门2-图5
contains()
用来判断字符串的一部分 contains(text(),'') contains(@class,'')
这个contains是用来模糊匹配的,可以看到源码中显示的是“下一页 ?”,用contains只需要“下一页”3个字就可以了
八爪鱼·云采集服务平台
www.bazhuayu.com
xpath入门2-图6
positon() 表示节点的序号 last() //div[last()]
八爪鱼·云采集服务平台
www.bazhuayu.com
xpath入门2-图7
首先看到上图中xpath
html/body/div[1]/div[3]/div/div/div[2]/div[1]/div匹配到了网页中的所有教程,但是我们如果只需要里面几项的时候就可以使用position() 如下图:
通过html/body/div[1]/div[3]/div/div/div[2]/div[1]/div[position()=5],里面的[position()=5]就可以指定是某个具体的教程了。
八爪鱼·云采集服务平台
www.bazhuayu.com
xpath入门2-图8:[position()=5],指定某个具体教程
following-sibling 当前元素的兄弟元素
这个可以参看数字翻页的例子哈
and\\or\\not and 并且与关系 or 并且或关系 not 不是
八爪鱼·云采集服务平台
www.bazhuayu.com
例如下面的html/body/div[1]/div[3]/div/div/div[2]/div[1]/div[2]/div/a[@style and @href],其中的[@style and @href]就代表找到同时具有这两个style和href属性的a标签
xpath入门2-图9:[@style and @href],具有style和href属性的a标签
相关阅读:
美团商家信息采集 豆瓣电影短评采集 房天下信息采集
八爪鱼——70万用户选择的网页数据采集器。
八爪鱼·云采集服务平台
www.bazhuayu.com
1、操作简单,任何人都可以用:无需技术背景,会上网就能采集。完全可视化流程,点击鼠标完成操作,2分钟即可快速入门。 2、功能强大,任何网站都可以采:对于点击、登陆、翻页、识别验证码、瀑布流、Ajax脚本异步加载数据的网页,均可经过简单设置进行采集。 3、云采集,关机也可以。配置好采集任务后可关机,任务可在云端执行。庞大云采集集群24*7不间断运行,不用担心IP被封,网络中断。 4、功能免费+增值服务,可按需选择。免费版具备所有功能,能够满足用户的基本采集需求。同时设置了一些增值服务(如私有云),满足高端付费企业用户的需要。