html和xml的区别
- html(超文本标记语言),用来显示数据
- xml(可扩展标记语言),用来传输和存储数据
xpath语法
-
//的用途//a当前html页面上的所有的abookstore//bookbookstore下的所有book元素
-
@的使用//a/@herf所有a的href
-
text()的使用//a/text()获取所有的a下的文本
-
text()的使用//a/text()获取所有的a下的文本//a[text()=下一页]获取文本为下一页的a标签
-
xpath查找特定的节点
//a[1]选择第一个a标签//a[last()]选择最后一个a标签//a[position()<4]选择前三个a标签
-
xpath的包含
//a[contains(text(),“下一页”)]选择文本包含下一页三个字的a标签//a[contains(@class, "n")]选择class属性包含n的a标签
lxml模块的使用
from lxml import etree
element = etree.HTML(html_str) # bytes或str类型的字符串
element.xpath("xpath_str") # 返回列表
etree.tostring(element) # 转化为字符串,查看与原始element是否有区别
# 数据提取时,先分组,再提取
本文详细介绍了XPath语言在HTML和XML文档中的使用,包括选取节点、属性和文本内容的方法。通过实例展示了如何利用XPath进行数据提取,如选取特定位置的元素、查找包含特定文本或属性值的节点。同时,提到了Python的lxml库作为XPath的实际应用工具,演示了如何将HTML字符串转换为元素对象并进行XPath查询,以及如何将结果转化为字符串进行对比。

被折叠的 条评论
为什么被折叠?



