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 文件重命名工具代码
Jul 26 Python
利用Python的装饰器解决Bottle框架中用户验证问题
Apr 24 Python
详解python基础之while循环及if判断
Aug 24 Python
Python实现的寻找前5个默尼森数算法示例
Mar 25 Python
浅析python3中的os.path.dirname(__file__)的使用
Aug 30 Python
使用Python和Prometheus跟踪天气的使用方法
May 06 Python
基于Django的乐观锁与悲观锁解决订单并发问题详解
Jul 31 Python
关于tf.TFRecordReader()函数的用法解析
Feb 17 Python
实例代码讲解Python 线程池
Aug 24 Python
python基于openpyxl生成excel文件
Dec 23 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
Jan 24 Python
python套接字socket通信
Apr 01 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通过header实现文本文件下载的代码
2010/08/08 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
将二维数组转为一维数组的2种方法
2014/05/26 PHP
详谈PHP编码转换问题
2015/07/28 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
2013/04/01 Javascript
JavaScript实现按Ctrl键打开新页面
2014/09/04 Javascript
jquery.cookie.js使用指南
2015/01/05 Javascript
JavaScript中reduce()方法的使用详解
2015/06/09 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
2015/06/19 Javascript
在React框架中实现一些AngularJS中ng指令的例子
2016/03/06 Javascript
第六章之辅组类与响应式工具
2016/04/25 Javascript
BootStrap智能表单demo示例详解
2016/06/13 Javascript
select下拉框插件jquery.editable-select详解
2017/01/22 Javascript
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
微信小程序实现列表页的点赞和取消点赞功能
2018/11/02 Javascript
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
2018/11/22 Javascript
ES6入门教程之let、const的使用方法
2019/04/13 Javascript
微信小程序实现蓝牙打印
2019/09/23 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
python实现保存网页到本地示例
2014/03/16 Python
Python实现去除代码前行号的方法
2015/03/10 Python
Python中处理字符串的相关的len()方法的使用简介
2015/05/19 Python
分享Python字符串关键点
2015/12/13 Python
Python中的上下文管理器和with语句的使用
2018/04/17 Python
python 使用poster模块进行http方式的文件传输到服务器的方法
2019/01/15 Python
python按照多个条件排序的方法
2019/02/08 Python
10行Python代码计算汽车数量的实现方法
2019/10/23 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
竞选文艺委员演讲稿
2014/04/28 职场文书
含预算的公司户外活动方案
2014/08/16 职场文书
开展创先争优活动总结
2014/08/28 职场文书
网吧员工管理制度
2015/08/05 职场文书
python字典的元素访问实例详解
2021/07/21 Python
MySQL 开窗函数
2022/02/15 MySQL