XPath 是一门在 XML 文档中查找信息的语言。
XPath 是 XSLT 中的主要元素。
XQuery 和 XPoint
XPath 使用路径表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。
xpath语法的一些规律
- 用xpath语法提取基于节点路径,每次只要输入一个字符串,字符串按照格式填写就能完成提取
- 格式是一层层的节点,用
/
分离,通过[]
在后面加入该节点的属性判断来唯一确定节点位置 - 提取的结果永远是list,最后都要用索引提取
- 不特殊指定的情况下会自动寻找所有满足条件的结果,可以在提取结果中用索引筛选,也可以在xpath内部使用索引
- 语法中分隔节点有两种方法
/
和//
,它们之间的差别在于,前者只寻找子节点,后者会寻找子孙所有后代的节点,将所有满足条件的全都找到 - 刚开始总是用
//
是因为我们不会从第一个节点一个一个写,写到我们想要的节点上去,这样代码就太长了。所以直接从中间找到一个便于唯一确定我们要找的位置的节点,再往后找就行了 - xpath好像不能查看一个节点所有属性以及专门去判断有没有某属性等
-
提取内容
-
因为xpath提取到的整个标签展现形式是这样的
[<Element h1 at 0x2122e994748>]
,所以先讲如何提取内容,之后讲如何提取标签时,才好根据输出内容来区分提出来的是什么东西。提取内容分为两个部分
- 提取标签内容,用
/text()
- 提取标签属性值,用
/@属性名
识别标签
1.只根据标签来识别
2.同时根据标签和属性识别
3.根据标签内内容来识别
4.根据位置识别