参考原文: 点击打开链接
XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,有不同类型的节点,包括元素节点,属性节点和文本节点,提供在数据结构树中找寻节点的能力。 [1] 起初 XPath 的提出的初衷是将其作为一个通用的、介于XPointer与XSLT间的语法模型。但是 XPath 很快的被开发者采用来当作小型查询语言。
from lxml import etree
text = '''
<div>
<ul>
<li class="item-0"><a href="link1.html">first item</a></li>
<li class="item-1"><a href="link2.html">second item</a></li>
<pi class="item-inactive"><a href="link3.html">third item</a></pi>
<ci class="item-1"><a href="link4.html">fourth item</a></ci>
<ti class="item-0"><a href="link5.html">fifth item</a></ti>
</ul>
</div>
'''
html = etree.HTML(text)
result = etree.tostring(html)
print(result)
1 节点关系
1.1 父节点
每个元素以及属性都有一个父节点
在上面的例子中:div是ul的父节点,ul是li的父节点
1.2 子节点
在上面的例子中:ul是div的子节点,li是ul的子节点
1.3同胞节点
在上面的例子中:li、pi、ci、ti