读写xml文件

以下面dameon来介绍读取xml文件

from xml.dom import minidom
#创建DOM对象
dom=minidom.Document()
#创建根节点。每次都要用DOM对象来创建任何节点
root_node = dom.createElement('info')
#用DOM对象添加根元素
dom.appendChild(root_node)
base_node = dom.createElement('base')
root_node.appendChild(base_node)
platform_node = dom.createElement('platfrom')
base_node.appendChild(platform_node)
platform_text=dom.createTextNode('Windows')
platform_node.appendChild(platform_text)
br_node = dom.createElement('browser')
base_node.appendChild(br_node)
br_text=dom.createTextNode('Firefox')
br_node.appendChild(br_text)
url_node=dom.createElement('url')
base_node.appendChild(url_node)
url_text=dom.createTextNode('http://www.baidu.com')
url_node.appendChild(url_text)
login_node_01=dom.createElement('login')
base_node.appendChild(login_node_01)
login_node_01.setAttribute('username','admin')
login_node_01.setAttribute('password','123456')
login_node_02=dom.createElement('login')
base_node.appendChild(login_node_02)
#设置节点的属性
login_node_02.setAttribute('username','guest')
login_node_02.setAttribute('password','654321')
test_node = dom.createElement('test')
root_node.appendChild(test_node)
pro_01=dom.createElement('province')
test_node.appendChild(pro_01)
#用DOM创建文本节点,把文本节点(文字内容)看成子节点
pro_text_01=dom.createTextNode('北京')
pro_01.appendChild(pro_text_01)
pro_02=dom.createElement('province')
test_node.appendChild(pro_02)
pro_text_02=dom.createTextNode('广东')
pro_02.appendChild(pro_text_02)
city_01=dom.createElement('city')
test_node.appendChild(city_01)
city_text_01=dom.createTextNode('深圳')
city_01.appendChild(city_text_01)
city_02=dom.createElement('city')
test_node.appendChild(city_02)
city_text_02=dom.createTextNode('珠海')
city_02.appendChild(city_text_02)
pro_03 = dom.createElement('province')
test_node.appendChild(pro_03)
pro_text_03=dom.createTextNode('浙江')
pro_03.appendChild(pro_text_03)
city_03=dom.createElement('city')
test_node.appendChild(city_03)
city_text_03=dom.createTextNode('杭州')
city_03.appendChild(city_text_03)

try:
    with open('info.xml','w',encoding='utf-8') as fp:
        dom.writexml(fp,indent='',addindent='\t',newl='\r',encoding='utf-8')
        print('write ok')
except Exception as e:
    print(e)

读取xml 文件

from xml.dom import minidom
#打开xml文档
dom=minidom.parse('info.xml')
#得到文档元素对象
root=dom.documentElement
print(root.nodeName)
print(root.nodeValue)
print(root.nodeType)
print(root.ELEMENT_NODE)
tagname = root.getElementsByTagName('browser')
print(tagname[0].tagName)
tagname=root.getElementsByTagName('login')
print(tagname[0].tagName)
username=tagname[0].getAttribute('username')
print(username)
#获取元素的属性
password=tagname[0].getAttribute('password')
print(password)
provinces=dom.getElementsByTagName('province')
#获取标签对的值
p1=provinces[1].firstChild.data
print(p1)
citys=dom.getElementsByTagName('city')
c1=citys[0].firstChild.data
print(c1)

 

你可能感兴趣的:(python学习笔记)