xpath解析库
一、Xpath解析库介绍
XPath,全称 XML Path Language,即 XML 路径语⾔,它是⼀⻔在 XML ⽂档中查找信息的语⾔。最早是⽤来搜寻 XML ⽂档的,但同样适⽤于 HTML ⽂档的搜索。所以在做爬⾍时完全可以使⽤ XPath做相应的信息抽取。
二、xpath的安装
1.xpath安装:pip install lxml
2.xpath的导包:from lxml import etree
三、xpath语法:
1.常用规则:
常用规则 | 作用 |
---|---|
nodename | 节点名定位 |
// | 从当前节点选取子孙节点 |
/ | 从当前节点选取直接子节点 |
nodename[@attribute="…"] | 获取属性 |
text() | 获取文本 |
xpath的常用规则
//title[@lang=‘eng’]
#这是⼀个 XPath 规则,代表的是选择所有名称为 title,同时属性 lang 的值为 eng 的节点,后⾯会
通过 Python 的 lxml 库,利⽤ XPath 进⾏ HTML 的解析。
2、属性匹配两种情况:多属性匹配&单属性多值匹配
2.1多属性匹配
示例:tree.xpath(’//div[@class=“item” and @name=“test”]/test()’)
2.2单属性多值匹配
示例: tree.xpath(’//div[contains(@class, “dc”)]/text()’)
3.按序选择:
3.1 索引定位: 从1开始
3.2 last()函数
3.3 position()函数