xpath的简单使用

这篇博客介绍了如何使用Python的lxml库通过XPath解析XML文档,特别是提取所有nick元素的文本内容。示例中展示了不同XPath表达式的效果,包括选取特定节点、选取后代节点以及使用通配符选取任意节点的子元素。
摘要由CSDN通过智能技术生成
from lxml import etree

xml ="""
<book>
    <id>1</id>
    <name>野花遍地香</name>
    <price>1.23</price>
    <nick>臭豆腐</nick>
    <author>
        <nick id='10086'>周大强</nick>
        <nick id='10010'>周芷若</nick>
        <nick class='joy'>周杰伦</nick>
        <nick class='jolin'>蔡依林</nick>
        <div>
            <nick>惹了</nick>
        </div>
        <span>
            <nick>惹了1</nick>
        </span>
    </author>
    
    <partner>
        <nick id='ppc'>胖胖陈</nick>
        <nick id='ppbc'>胖胖不陈</nick>
    </partner>
</book>
"""

#xpath解析
tree = etree.XML(xml)      #加载xml
#result1 = tree.xpath("/book")     #/表示层级关系,第一个/是根节点
#result2 = tree.xpath("/book/name")
#result3 = tree.xpath("/book/name/text()")            #  text()拿文本
#result4 = tree.xpath("/book/author//nick/text()")     #  //后代
#result5 = tree.xpath("/book/author/*/nick/text()")     # * 任意的节点,通配符(会儿)
result6 = tree.xpath("/book//nick/text()")

print(result1)
print(result2)
print(result3)
print(result4)
print(result5)
print(result6

xpath的简单使用,一些小笔记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值