一、我们对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"))#获取某一节点的属性值

同时我们还可以使用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的属性的字典类型的内容

i

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))

三、源码

D30_2_XmlAnalysis.py

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

2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Python连载45-XML解析(使用minidom和etree分别示例)的更多相关文章

  1. Python XML解析(转载)

    Python XML解析 什么是XML? XML 指可扩展标记语言(eXtensible Markup Language). 你可以通过本站学习XML教程 XML 被设计用来传输和存储数据. XML是 ...

  2. Xml解析之——Java/Android/Python

    Xml解析之——Java/Android/Python 一.Xml文件 test.xml <note> <to>George</to> <from>Jo ...

  3. xml 解析 python

    1 综述 有很多种解析方法. (1)  DOM   缺点是:1 不能解析格式不正确或者不规则xml  2据说只能解析utf-8格式,非utf-8需要转码 与SAX比较,DOM典型的缺点是比较慢,消耗更 ...

  4. Python XML解析之DOM

    DOM说明: DOM:Document Object Model API DOM是一种跨语言的XML解析机制,DOM把整个XML文件或字符串在内存中解析为树型结构方便访问. https://docs. ...

  5. Python XML解析之ElementTree

    参考网址: http://www.runoob.com/python/python-xml.html https://docs.python.org/2/library/xml.etree.eleme ...

  6. python大法好——Python XML解析

    Python XML解析 什么是XML? XML 被设计用来传输和存储数据. XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识. 它也是元标记语言,即定义了用于定义其他与 ...

  7. 【Python】xml 解析

    1. XML:指可扩展标记语言,是一种标记语言,用于存储数据和传输数据,但没有像HTML那样具有预定义标签,需要程序猿自定义标签 2. XML的解析:读取XML数据结构中的某些信息,比如读取书的属性 ...

  8. Python之XML解析详解

    什么是XML? XML 指可扩展标记语言(eXtensible Markup Language). XML 被设计用来传输和存储数据. XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这 ...

  9. Python XML解析

    什么是XML? XML 指可扩展标记语言(eXtensible Markup Language). 你可以通过本站学习XML教程 XML 被设计用来传输和存储数据. XML是一套定义语义标记的规则,这 ...

随机推荐

  1. ftp上传文件,上传的文件大小是0

    此问题是最近出现,代码和配置完全没改,试过所有的办法,两天了一直都解决不了,用完弃坑. 防火墙.被动模式主动模式,编码,服务端内存,日志,common-net.jar版本问题,服务端配置,nginx配 ...

  2. Python3 中的Number

    Python3 支持 int.float.bool.complex(复数). 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. 像大多数语言一样,数 ...

  3. win10 安装cuda和cudnn

    首先通过nvidia-smi 查看自己的显卡驱动对应的cuda版本. 参考:https://blog.csdn.net/qq_40212975/article/details/89963016 再去官 ...

  4. RabbitMQ几个常用面试题

    以下观点,仅为个人理解的总结,如有错漏,欢迎指正! -------------------------------------------------------------------------- ...

  5. ycsb 测试Hbase性能

    下载 github:https://github.com/brianfrankcooper/YCSB/releases/tag/0.10.0 wget https://github.com/brian ...

  6. 如何使用1行代码让你的C++程序控制台输出彩色log信息

    本文首发于个人博客https://kezunlin.me/post/a201e11b/,欢迎阅读最新内容! colorwheel for colored print and trace for cpp ...

  7. ASP.NET 页面控制

    一.HTTPRequest对象封装客户端请求页面或提交表单时提供的信息 请求方法:get/post 参数名/值 Cookie 使用的语言二.Rquest对象常用方法与属性 属性: QueryStrin ...

  8. linux中crontab任务调度

    一.创建调度任务 指令 crontab -e 进入当前用户编辑界面 crontab -u 用户名 -e 进入指定用户编辑界面 进入crontab任务编辑界面 任务编写格式 #每分钟执行查看一次/ect ...

  9. Access Grid Control Properties 访问网格控件属性

    In this lesson, you will learn how to access the properties of a list form's Grid Control in WinForm ...

  10. C#基本语法<一>_入门经典

    基本信息 CIL和JIT CIL通用中间语言 JIT just-in-time使得CIT代码仅在需要时才编译 程序集 包含可执行文件.exe和库函数.dll和资源文件,不必把程序集集中到一个地方,全局 ...