Xpath的使用

简介: 简单使用

Xpath即是XML路径语言,用来在XML文档中查询信息,也适用于HTML文档的搜索。

Xpath概览

Xpath的选择功能十分强大,它提供了非常简介明了的路径选择表达式,用于字符串,数字,时间的匹配。

Xpath常用规则

nodename 选取此节点的所有子节点
/ 从当前结点选取直接结点
// 从当前结点选取子孙结点
@ 选取属性
列举一个Xpath的一个常用匹配规则, 如//title[@lang='eng'],代表着所有名称为title,同时属性为lang的值的eng的结点。

Xpath的安装

简单安装pip3 install lxml

基本使用

from lxml import etree
text="""


  • """

    导入lxml的etree模块,声明一段HTML文本,接着调用类进行初始化,成功构造出一个Xpath解析对象,且

    HTML文本中的最后一个li结点是没有闭合的,而etree模块则可以自动修正HTML文本。

    之后调用tostring方法既可以输出修正过后的HTML文本,但是结果为bytes类型,需要用decode方法来对其进行

    转化成str类型

    html=etree.HTML(text)

    result=etree.tostring(html)
    print(result.decode('utf-8'))

    所有结点

    html=etree.parse('test.html',etree.HTMLParser())
    result=html.xpath('//*')
    print(result)

相关文章
|
5月前
|
Android开发 UED 开发者
NavigableListDetailPaneScaffold
【9月更文挑战第12天】
44 5
|
8月前
PAT乙级 1016 部分A+B
PAT乙级 1016 部分A+B
|
9月前
|
SQL 分布式计算 数据库
ApacheHudi使用问题汇总(二)
ApacheHudi使用问题汇总(二)
140 0
|
9月前
|
SQL 分布式计算 HIVE
ApacheHudi使用问题汇总(一)
ApacheHudi使用问题汇总(一)
74 0
|
Linux
packetdrill
packetdrill工具安装
270 0
packetdrill
|
负载均衡 分布式数据库 数据库
spanner 的前世今生
spanner的前身是big table,让我们先来看看big table这个老子的方方面面,然后再来看看儿子spanner为啥一出世就吸引了全球技术人员的眼球。 2006年,google 发表了big table [1]的文章,为什么要做big table,下面有一个简短的总结[2]: 就
9720 3
|
JavaScript 前端开发
|
Web App开发 Ubuntu Linux