config.xml文件如下:
<?xml version="1.0" standalone="yes" ?>
<CONFIG_LIST>
<COMP NAME="oracle.assistants.netca.client" VER="11.2.0.1.0" PLAT="NT_X86">
<path value="/opt/imap/lib" />
<path value="/opt/imap/med/lib1" />
<path value="/opt/imap/med/lib2" />
<path value="/opt/imap/med/lib3" />
<path value="/opt/imap/med/lib4" />
</COMP>
</CONFIG_LIST>
1、读xml文件
# -*- coding: gb18030 -*-
#获取 path下得value属性集合,并进行替换
def get_tagname():
from xml.dom.minidom import parse, parseString
doc = parse("f:\\config.xml")
for node in doc.getElementsByTagName("path"):
value_str = node.getAttribute("value")
if value_str.find("/med/")>0:
print value_str.replace('/opt/imap/',"/opt/oss/")
else:
print value_str
get_tagname()
2、生成xml文件
# -*- coding: gb18030 -*-
#生成xml文件
def GenerateXml():
import xml.dom.minidom
impl = xml.dom.minidom.getDOMImplementation()
dom = impl.createDocument(None, 'CONFIG_LIST', None)
root = dom.documentElement
employee = dom.createElement('COMP')
root.appendChild(employee)
nameE=dom.createElement('path')
nameT=dom.createTextNode('linux')
nameE.appendChild(nameT)
nameE.setAttribute("value","aaaaaaaaaaa") #增加属性
employee.appendChild(nameE)
f= open('f:\\config_new.xml', 'a')
dom.writexml(f, addindent=' ', newl='\n')
f.close()
GenerateXml()
生成的config_new.xml如下:
<?xml version="1.0" ?>
<CONFIG_LIST>
<COMP>
<path value="aaaaaaaaaaa">
linux
</path>
</COMP>
</CONFIG_LIST>
本文介绍如何使用Python读取和修改XML文件,以及如何创建新的XML文件。通过具体代码示例展示了如何获取XML中特定节点的属性值并进行替换,同时演示了如何构建新的XML结构。
2672

被折叠的 条评论
为什么被折叠?



