python 读取xml文件
首先,获得标签信息abc.xml
<?xml version="1.0" encoding="utf-8"?>
<catalog>
<maxid>4</maxid>
<login username="pytest" password="123456">
<caption>Python</caption>
<item id="4">
<caption>Testing</caption>
</item>
</login>
<item id="2">
<caption>Zope</caption>
</item> </catalog>
python获取catalog标签的信息
# -*- coding:utf-8 -*- import xml.dom.minidom # 打开xml文档
dom = xml.dom.minidom.parse('abc.xml') # 得到文档元素对象
root = dom.documentElement
print root.nodeName
print root.nodeValue
print root.nodeType
print root.ELEMENT_NODE
xml.dom.minidom 模块被用来处理xml文件
parse():用于打开一个xml文件
documentElement:用于得到dom对象的文档元素,并将获得的对象给root,每一个结点都有它的nodeName,nodeValue,nodeType属性
nodeName:结点名字
nodeValue:结点值,只对文本结点有效
nodeType:结点类型
二、获得子标签:
<maxid>
<login>
import xml.dom.minidom
dom = xml.dom.minidom.parse('abc.xml')
root = dom.documentElement
bb = root.getElementsByTagName('maxid')
bb = bb[0]
print bb.nodeName
bb = root.getElementsByTagName('login')
bb = bb[0]
print bb.nodeName
三、区分相同标签名字的标签
<caption>
<item>
import xml.dom.minidom # 打开xml文档
dom = xml.dom.minidom.parse('abc.xml') # 得到文档元素对象
root = dom.documentElement aa = root.getElementsByTagName('caption')
a = aa[2]
print a.nodeName aa = root.getElementsByTagName('item')
a = aa[1]
print a.nodeName
root.getElementsByTagName('caption')获得的标签是caption一组标签
四、获得标签的属性值
username="pytest" password="123456"
id="4"
id="2"
import xml.dom.minidom # 打开xml文档
dom = xml.dom.minidom.parse('abc.xml') # 得到文档元素对象
root = dom.documentElement # 获取标签的属性值
itemlist = root.getElementsByTagName('login')
item = itemlist[0]
un = item.getAttribute('username')
print un pd = item.getAttribute('password')
print pd ii = root.getElementsByTagName('item')
i1 = ii[0]
i = i1.getAttribute('id')
print i i2 = ii[1]
i = i2.getAttribute('id')
print i
五、获得标签对之间的数据
<caption>Python</caption>
<caption>Testing</caption>
<caption>Zope</caption>
import xml.dom.minidom # 打开xml文档
dom = xml.dom.minidom.parse('abc.xml') # 得到文档元素对象
root = dom.documentElement cc = dom.getElementsByTagName('caption')
c1 = cc[0]
print c1.firstChild.data c2 = cc[1]
print c2.firstChild.data c3 = cc[2]
print c3.firstChild.data
python 读取xml文件的更多相关文章
- python读取xml文件
关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...
- python读取xml文件报错ValueError: multi-byte encodings are not supported
1.在使用python对xml文件进行读取时,提示ValueError: multi-byte encodings are not supported 很多贴子上说把xml的编码格式改为,就可以正常执 ...
- python读取xml文件中的坐标点
用labelImg工具制作好xml文件后,需要读取其中img路径和坐标点,生成一个label.txt <annotation> <folder>big</folder&g ...
- python读取xml文件示例
最近用到了xml格式的文件,对这些没啥印象,顺便学习一下,做个例子,方便后续查阅. xml文档: <annotation> <folder>VOC2012</folder ...
- 【Python实例一】使用minidom读取xml文件
前言:最近刚在廖雪峰老师的网站里学习了Python的基础内容,想着循序渐进地找点实例练练手,网上看到有很多相关资料,决定针对感兴趣的内容实际编码实践一下,昨天刚好看到有关使用Python来读取XML文 ...
- selenium-python读取XML文件
首先这是我们要读取的XML文件 <?xml version="1.0" encoding="utf-8" ?><info> <ba ...
- python读写xml文件
python读取xml文件 xml文件是具有树状结构的,如果想要访问某个叶子结点,必须逐层获取其父结点,要读取某个叶子结点内容用text成员 使用前先加载xml工具包 try: import xml. ...
- Python 读写XML文件
Python 生成XML文件 from xml.dom import minidom # 生成XML文件方式 def generateXml(): impl = minidom.getDOMImple ...
- python专题-读取xml文件
关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...
随机推荐
- 使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置
1.使用java代码动态配置与xml文件结合的方式使用mybatis-generator生成代码配置 2.上代码:在resources目录下新建:generatorConfiguration.xml文 ...
- JS中的Map和Set
使用iterable内置的forEach方法 var a = ['A', 'B', 'C']; a.forEach(function (element, index, array) { // elem ...
- eclipse memory analyzer对系统内存溢出堆文件解析(转)
本文转之:https://blog.csdn.net/rachel_luo/article/details/8992461 前言 性能分析工具之-- Eclipse Memory Analyzer t ...
- windows API 第 11 篇 GetCurrentDirectory SetCurrentDirectory
GetCurrentDirectory函数获得当前文件所在的目录,并不是进程的目录(debug 和 release),它和GetCommandLine不同这里只讲 GetCurrentDirector ...
- 【NOIP2016提高A组集训第14场11.12】随机游走——期望+树形DP
好久没有写过题解了--现在感觉以前的题解弱爆了,还有这么多访问量-- 没有考虑别人的感受,没有放描述.代码,题解也写得歪歪扭扭. 并且我要强烈谴责某些写题解的代码不打注释的人,像天书那样,不是写给普通 ...
- JS--封装JS跳转页面函数
//JS跳转页面 function gourl($iAlert,$iPage,$history='',$target="window") { if ($iAlert != &quo ...
- 深入浅出 Java Concurrency (20): 并发容器 part 5 ConcurrentLinkedQueue[转]
ConcurrentLinkedQueue是Queue的一个线程安全实现.先来看一段文档说明. 一个基于链接节点的无界线程安全队列.此队列按照 FIFO(先进先出)原则对元素进行排序.队列的头部 是队 ...
- RSA加密算法在WEB中的应用
加密算法有很多,如不可逆的摘要算法MD5.SHA(安全哈希算法),可逆的Base64编码,对称加密算法DES.AES,还有非对称加密算法DH.RSA等.那是不是说明我们可以使用任何一种加密算法就能保证 ...
- mysql基本笔记之一
1.创建数据库 CREATE DATABASE admin 2.查看数据库 SHOW DATABASES 3.使用数据库 USE admin 4.创建user表 CREATE TABLE user V ...
- jsp中 url传参到后台的参数获取
datagrid传值url方法1:<input type="hidden" id="sortid"> <table id="dg&q ...