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 StringIO模块实现在内存缓冲区中读写数据
Apr 08 Python
使用相同的Apache实例来运行Django和Media文件
Jul 22 Python
Python中生成Epoch的方法
Apr 26 Python
TensorFlow安装及jupyter notebook配置方法
Sep 08 Python
pygame游戏之旅 添加游戏介绍
Nov 20 Python
python_opencv用线段画封闭矩形的实例
Dec 05 Python
PowerBI和Python关于数据分析的对比
Jul 11 Python
解决python 文本过滤和清理问题
Aug 28 Python
Python单元测试模块doctest的具体使用
Feb 10 Python
python实现随机加减法生成器
Feb 24 Python
Python 3.8 新功能来一波(大部分人都不知道)
Mar 11 Python
python异常处理、自定义异常、断言原理与用法分析
Mar 23 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
解析PHP将对象转换成数组的方法(兼容多维数组类型)
2013/06/21 PHP
一个显示效果非常不错的PHP错误、异常处理类
2014/03/21 PHP
php获取数组元素中头一个数组元素值的实现方法
2014/12/20 PHP
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
PHP高精确度运算BC函数库实例详解
2017/08/15 PHP
jquery插件jbox使用iframe关闭问题
2009/02/09 Javascript
xmlhttp缓存清除的2种解决方法
2013/12/13 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
2014/05/02 Javascript
JS获取及设置TextArea或input文本框选择文本位置的方法
2015/03/24 Javascript
js给selected添加options的方法
2015/05/06 Javascript
用户代理字符串userAgent可实现的四个识别
2015/09/20 Javascript
微信小程序 特效菜单抽屉效果实例代码
2017/01/11 Javascript
Vue2.x中的Render函数详解
2017/05/30 Javascript
微信小程序实现顶部下拉菜单栏
2018/11/04 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
webpack的pitching loader详解
2019/09/23 Javascript
JavaScript中的相等操作符使用详解
2019/12/21 Javascript
Python实现将罗马数字转换成普通阿拉伯数字的方法
2017/04/19 Python
Python之web模板应用
2017/12/26 Python
Python实现图像去噪方式(中值去噪和均值去噪)
2019/12/18 Python
python中的itertools的使用详解
2020/01/13 Python
利用matplotlib为图片上添加触发事件进行交互
2020/04/23 Python
Python tempfile模块生成临时文件和临时目录
2020/09/30 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
2020/11/02 Python
python网络爬虫实现发送短信验证码的方法
2021/02/25 Python
Html5定位终极解决方案
2020/02/05 HTML / CSS
生物有机护肤品:Aurelia Probiotic Skincare
2018/01/31 全球购物
意大利在线大学图书馆:Libreria universitaria
2019/07/16 全球购物
Made in Design德国:设计师家具、灯具和装饰
2019/10/31 全球购物
岳父生日宴会答谢词
2014/01/13 职场文书
军人违纪检讨书
2014/02/04 职场文书
小学清明节活动方案
2014/03/08 职场文书
党员入党表决心的话
2014/03/11 职场文书
副总经理岗位职责
2014/03/16 职场文书
干货!开幕词的写作方法
2019/04/02 职场文书