什么是XPath
XPath是一种查询XML和HTML文档的语言。使用XPath,您可以定位、搜索和提取文档中的特定元素。
考虑以下HTML文档示例:
<!DOCTYPE html>
<html>
<head>
<title>Example Document</title>
</head>
<body>
<h1>Heading 1</h1>
<div>
<h2>Subheading 1</h2>
<p>Paragraph 1</p>
<p>Paragraph 2</p>
</div>
<div>
<h2>Subheading 2</h2>
<p>Paragraph 3</p>
<p>Paragraph 4</p>
</div>
</body>
</html>
注意事项
在使用Xpath 的时候
尽量不要使用绝对路径
尽量减少路径级别
尽量不要使用下标
尽量简洁写法
XPath表达式
XPath表达式是用于选择文档中元素的一组地址属性。XPath基于路径表达式和查询文档中的元素。XPath表达式可以是:
- 绝对路径:从文档根开始,指向元素的完整路径
- 相对路径:元素之间关系的路径
以下是XPath表达式中的一些基本术语:
- 元素:文档中包含内容的任何元素
- 轴:文档中元素间关系的方向
- 谓词:附加元素限制的一个条件,例如”第一个”或”最后一个”元素
选择元素
XPath用于选择元素的路径表达式有以下几种方式:
元素名称
XPath使用元素名称来选择元素。在上面的示例中,要选择标题元素,可以使用如下表达式:
//title
斜杠运算符
XPath还可以使用斜杠运算符(/)来选择直接子元素。如下表达式将选择文档中的正文元素:
/html/body
带有谓词的元素
XPath使用方括号中的条件来设置谓词。如下表达式将选择第一个段落元素:
//p[1]
通配符
XPath使用通配符(*)来选择文档中的所有元素。如下表达式将选择文档中的所有段落元素:
//*
多个元素名称
XPath使用 |
操作符选择多个元素。如下表达式将选择所有段落和标题元素:
//p | //h1 | //h2
选择元素属性
XPath可以选择元素属性,如下所示:
//div[@class='example']
在这个示例中,XPath将选择具有class属性值为’example’的div元素。
选择复杂文档结构
在更复杂的文档中,XPath表达式也可以很好地工作。例如,以下表达式将选择具有class属性值为’example’的第一个段落元素:
//p[@class='example'][1]
结论
XPath是一种功能强大的语言,用于选择XML或HTML文档中的元素。本文提供了XPath语法的详细介绍。希望能对你有所帮助.
原文链接:https://juejin.cn/post/7230597098848485431 作者:中亿丰数字科技集团有限公司