Python学习笔记:25 xpath元素定位

xpath

  • xpath:查找XML(用来存储和传输数据的)文档的语言
  • lxml:专门用来处理XML和HTML数据的三方库
  • etree.XML():将XML格式的字符串转换成Element对象,可以方便地使用xpath方法。
  • etree.HTML():将HTML格式的字符串转换成Element对象,可以方便地使用xpath方法。

xpath基本用法

from lxml import etree

xml_str = """
<supermarket>
    <name>永辉超市</name>
    <address>中国</address>
    <address name="one">四川成都</address>
    <address name="two">肖家河大厦</address>
    <goodsList>
        <goods name="泡面" price="3.5" count="20"></goods>
        <goods name="矿泉水" price="2" count="50"></goods>
        <goods name="面包" price="5" count="15"></goods>
    </goodsList>
    <worker_list>
        <cashier name="张三" pay="4000"></cashier>
        <shoppingGuide name="李四" pay="3500"></shoppingGuide>
    </worker_list>
    <goods price="50" count="15">
         <name>烟</name>
    </goods>
</supermarket>
"""

root = etree.XML(xml_str)
print(type(root))
print(root)
  1. xpath语法
  • */:表示根节点
  • //:表示文档的任意节点
  • .:表示当前节点
  • ..:当前节点的父节点
  • @:表示节点的属性
  1. 实例
  • /supermarket :表示提取根节点的所有子节点
  • /supermarket/text() :表示提取根节点的所有子节点的内容
  • supermarket :提取supermarket子节点
  • //name :表示提取文档中的所有name节点
  • /supermarket/goodsList/goods/@name :提取supermarket根节点下的goodsList子节点的goods子节点的name属性
print(root.xpath('/supermarket/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

better meˇ:)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值