简介

遇到了好几次'XPATH'这个词,近日在学习ChormeDev(谷歌浏览器开发者工具)又遇到,故特意了解学习。
XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。(摘自w3school
通俗说,是XML语言中通过路径(特俗的路径)寻找标签的方法。
XPath 使用路径表达式在 XML 文档中进行导航。
XPath 包含一个标准函数库。
XPath 是 XSLT 中的主要元素。
XPath 是一个 W3C 标准。

详解

  • 示例代码:
<body>
<div id="firstdiv">
    <img src="https://www.test.com" class="test">
    <div id="seconddiv">
        <input name="input">inputtext</input>
    </div>
</div>
</body>
  • 基本语法
nodename选取此节点的所有子节点
/从根节点选取
//从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
.选取当前节点
..选取当前节点的父节点
@选取属性
  • 实例
body            选取body元素的所有子节点(节点==标签)。
/body            选取根元素 body。注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径!
body/div    选取属于 body 的子元素的所有 div 元素。
//div            选取所有 div 子元素,而不管它们在文档中的位置。
div//input    选择属于 div 元素的后代的所有 input 元素,而不管它们位于 input 之下的什么位置。
//@name="input"    选取名为 name 的属性且值等于 input 。

结语

xpath还有很多用法,详细学习可以访问w3school、菜鸟等,都有相关学习资料。
xpath并非xml的专属,html也有,但是似乎有些略微不同。有兴趣可以学习。