python 获取xml节点属性_Python大神都是这样处理xml文件的!

最近有同学询问如何利用Python处理xml文件,特此整理一个比较简洁的操作手册,供大家参阅。 

首先准备一个xml文件,xml中的内容如下所示。

存储为:student.xml

88459247e0f0e983b887f36c4f4cf0d1.png

如果要获取这个xml里面的数据,我们需要利用Python里面ElementTree来进行处理。

8fdc3462fb1f9af6fd2b441000a3c721.gif

具体操作如下所示:

1、导入包(包是Python内置自带)

faadf664802acba33822990a1451f311.png

2、打开文件,并获取根节点的属性和节点名称

e3df1fefb076c4a7a9007dd0a50f56f9.png

运行代码后,结果如下所示:

0445498525ee515ed5894eedddf43e04.png

3、利用find方法获取子节点(缺点:只能根据提供的名称获取第一个子节点)

acdf541c5807738f87913f45b5bfc285.png

运行结果如下所示:

9524919884a0c603e4f80e0972e4aa7e.png

4、利用findall方法获取所有子节点,返回的节点会存在一个列表里面

3e13c771bfb4e202b030a52b6fae291d.png

运行的结果如下所示:运行的结果如下所示:

6dffdfdbc62f2d91bc10f43c155b2364.png

5、利用findall方法获取所有三级子节点,返回的节点会存在一个列表里面

9720c4890d5aefec47b108dfd2d3ddb6.png

运行结果如下所示:

953a481f63a77a1bcdaaafb9bbad1654.png

6、利用遍历的方法去直接遍历子节点里面的所有元素

f0a4cbcb1f9a8be7fa879ffa904fbdf9.png

运行结果如下所示:

cd5686efbb9a3dcecdbd6e3225b80b2d.png

至此我们的xml的处理已经完全结束啦!

8fdc3462fb1f9af6fd2b441000a3c721.gif

给大家留下一个练习题: 有一个xml的文件。

内容如下,保存为:UILibrary.xml

b2cff402d28e57c03de770f58fea9e10.png

0930f2e432ce220f4fb26408ede450df.png

8fdc3462fb1f9af6fd2b441000a3c721.gif

针对上述xml文件,要求如下:

写一XmlUtil类

里面写一个函数:get_page

传递一个参数file_path

实现元素的读取,返回列表形式的数据,并且列表里面存储每个page节点的信息;

写一个page类

有2个属性:page_key_word,

存储页面信息;uiElement存储列表数据

写一个UiElement类

有1个属性:存储列表类型的数据,把每一个信息作为列表里面的一个数据。

后面也会结合WEB自动化来给大家做进一步的分享,记得持续关注柠檬班的动态呦~

本文由柠檬班华华老师原创,转载需注明出处!

9ddb857c647e656e181bc58b1003e5ca.png

转发到朋友圈是最高的赞赏

关注柠檬班微信公众号,获取最新技术文章

让软件测试学习变得更简单!

9bcf346d36583538d68c19b03794d37b.png

3384c22e2ca4a1da85ee560d0e5d260c.png 

今日福利

需要练习题答案

可加小米老师微信:

13327316731

暗号:公众号

3104f4ee5646ecd2be6ae4512afb30f2.png

9d85943ae4b6bd03c3437d76eddda9b1.gif
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值