预备阅读:Python中lxml库的用法
前言
前面已经学习了Python的lxml库,从库的名称来看,lxml包含了xml,所以lxml同样可以解析XML文档,而lxml使用的就是XPATH语法。下面做一下简单介绍。
XPath语法
XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。XPath 是 W3C XSLT 标准的主要元素,并且 XQuery 和XPointer 都构建于 XPath 表达之上。因此,对 XPath 的理解是很多高级 XML 应用的基础。
在继续学习之前,应该对下面的知识有基本的了解(默认同学们都会了,不知道的同学可以去看一下,很简单的):
-
HTML / XHTML
-
XML / XML 命名空间
XPath 术语
节点(Node)
在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML 文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。
基本值(或称原子值,Atomic value)
基本值是无父或无子的节点。
基本值的例子:
J K. Rowling "en"
项目(Item)
项目是基本值或者节点。
节点关系
(1)父(Parent)
每个元素以及属性都有一个父。
在下面的例子中,book 元素是 title、author、year 以及 price 元素的父:
(2)子(Children)
元素节点可有零个、一个或多个子。
在下面的例子中,title、author、year 以及 price 元素都是 book 元素的子&#