python 对xml解析的示例


Posted in Python onFebruary 27, 2021

一、我们对XML的读取进行一波演示

import xml.dom.minidom

#负责解析xml文件的包

from xml.dom.minidom import parse

​

#使用minidom打开xml文件

DOMTree = xml.dom.minidom.parse("D30_1_XmlNameSpace.xml")

print(DOMTree)#将该XML文件定义为一个对象

#得到文档对象

doc = DOMTree.documentElement#打印出了带有根目录的名字的对象

print(doc)

​

#显示子元素

for ele in doc.childNodes:

  if ele.nodeName == "student:Name":

    print("=======Node:{0}=======".format(ele.nodeName))

    print(doc.childNodes)

  if ele.nodeName == "Age":

    print(ele.getAttribute("jio"))#获取某一节点的属性值

python 对xml解析的示例

二、同时我们还可以使用xml.DOM.etree这种方式来进行解析

我们提供方法:

(1)以树形结构来表示xml;

(2)root.getiterator:得到相应的可迭代的node集合

(3)root.iter

(4)find(node_name):查找指定node_name的节点,返回一个node

(5)root.findall(node_name):返回多个node_name的节点

(6)node.tag:node对应的tagename

(7)node.text:node的文本值

(8)node.attrib:是node的属性的字典类型的内容

mport xml.etree.ElementTree

root = xml.etree.ElementTree.parse("D30_1_XmlNameSpace.xml")

nodes = root.getiterator()

for node in nodes:

  print("{0}---{1}".format(node.tag,node.text))

print("===========================================")

ele_room_name = root.find("Location")

print(type(ele_room_name))

print("{0}----{1}".format(ele_room_name.tag,ele_room_name.text))

print("===========================================")

ele_room_name2 = root.findall("{http://my_room}Name")#这里如果使用“room:Name”是解析不出来的

print(ele_room_name2)

for ele in ele_room_name2:

  print("{0}----{1}".format(ele.tag,ele.text))

ele_room_name2 = root.findall("room:Name")

print(ele_room_name2)

for ele in ele_room_name2:

  print("{0}----{1}".format(ele.tag,ele.text))

python 对xml解析的示例

三、源码

D30_2_XmlAnalysis.py

https://github.com/ruigege66/Python_learning/blob/master/D30_2_XmlAnalysis.py

以上就是python 如何对xml解析的详细内容,更多关于python 对xml解析的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
详解python中字典的循环遍历的两种方式
Feb 07 Python
快速了解python leveldb
Jan 18 Python
Python内置模块hashlib、hmac与uuid用法分析
Feb 12 Python
django将图片上传数据库后在前端显式的方法
May 25 Python
Python实现的KMeans聚类算法实例分析
Dec 29 Python
python使用selenium实现批量文件下载
Mar 11 Python
10分钟用python搭建一个超好用的CMDB系统
Jul 17 Python
Python Django的安装配置教程图文详解
Jul 17 Python
将pytorch转成longtensor的简单方法
Feb 18 Python
python 读取二进制 显示图片案例
Apr 24 Python
Python Dict找出value大于某值或key大于某值的所有项方式
Jun 05 Python
Python如何定义有默认参数的函数
Aug 10 Python
python如何发送带有附件、正文为HTML的邮件
Feb 27 #Python
pytorch __init__、forward与__call__的用法小结
Feb 27 #Python
python 实现有道翻译功能
Feb 26 #Python
Python爬取酷狗MP3音频的步骤
Feb 26 #Python
python利用xpath爬取网上数据并存储到django模型中
Feb 26 #Python
用python 绘制茎叶图和复合饼图
Feb 26 #Python
python lambda的使用详解
Feb 26 #Python
You might like
解析ajax事件的调用顺序
2013/06/17 PHP
php求一个网段开始与结束IP地址的方法
2015/07/09 PHP
Symfony2安装第三方Bundles实例详解
2016/02/04 PHP
JQuery分别取得每行最后一列和最后一行的示例代码
2013/08/18 Javascript
jQuery遍历json的方法(推荐)
2016/06/12 Javascript
Vue过滤器的用法和自定义过滤器使用
2017/02/08 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
详解Vue中组件的缓存
2019/04/20 Javascript
vue组件间通信六种方式(总结篇)
2019/05/15 Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
2019/12/06 Javascript
分享8个JavaScript库可更好地处理本地存储
2020/10/12 Javascript
jquery实现拖拽小方块效果
2020/12/10 jQuery
前端如何实现动画过渡效果
2021/02/05 Javascript
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
[56:20]LGD vs VP Supermajor 败者组决赛 BO3 第三场 6.10
2018/07/04 DOTA
[01:10:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第一场 3月4日
2021/03/11 DOTA
深度剖析使用python抓取网页正文的源码
2014/06/11 Python
详解Python中的Cookie模块使用
2015/07/06 Python
Python实现FTP上传文件或文件夹实例(递归)
2017/01/16 Python
利用python写个下载teahour音频的小脚本
2017/05/08 Python
python实现嵌套列表平铺的两种方法
2018/11/08 Python
为什么你还不懂得怎么使用Python协程
2019/05/13 Python
对Django中的权限和分组管理实例讲解
2019/08/16 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
GLAMGLOW格莱魅美国官网:美国知名的面膜品牌
2016/12/31 全球购物
欧缇丽加拿大官方网站:Caudalie加拿大
2019/07/18 全球购物
介绍一下Mysql的存储引擎
2015/02/12 面试题
造价工程师个人求职信
2013/09/21 职场文书
医学类个人求职信范文
2014/02/05 职场文书
人民教师求职自荐信
2014/03/12 职场文书
潘婷洗发水广告词
2014/03/14 职场文书
教师年度考核评语
2014/04/28 职场文书
1亿有多大教学反思
2014/05/01 职场文书
项目建议书怎么写
2014/05/15 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
创业计划书之水果店
2019/07/18 职场文书