XPath是一门再XML文档中查找信息的语言,XPath可用来在XML文档中对元素和属性进行遍历,而我们熟知的HTML恰巧属于XML的一个子集,所以完全可以用XPath去查找html中的内容。
首先,先了解几个概念。
<book>
<id>1</id>
<name>野花遍地香</name>
<price>1.23</price>
<author>
<nick>周大强</nick>
<nick>周芷若</nick>
</author>
</book>
在上述html中,
- book,id,name,price....都称为节点
- id,name,price ,author被称为book的子节点
- book被称为id,name,price,author的父节点
- id,name,author被称为同胞节点
OK~有了这些基础知识后,我们就可以开始了解xpath的基本语法了
在python中想要使用xpath,需要安装lxml模块
pip install lxml
用法:
- 将要解析的html内容构造出etree对象
- 使用etree对象的xpath()方法配合xpath表达式来完成对数据的提取
xml = """
<book>
<id>1</id>
<name>野花遍地香</name>
<price>1.23</price>
<nick>臭豆腐</nick>
<author>
<nick id="10086">周大强</nick>
<nick id="10010">周芷若</nick>
<nick class="jay">周杰伦</nick>
<nick class="jolin">蔡依林</nick>
<div>
<nick>惹了</nick>
</div>
</author>
<partner>
<nick id="ppc">胖胖陈</nick>
<nick id="ppbc">胖胖不胖</nick>
</partner>
</book>
"""
网友评论