採用minidom讀取,
在dom上創建新節點,
dom.createElement('item')
再將節點掛在對應節點下
byCardNo.appendChild(item)
將修改後的dom重新寫入,建議換一個文件名再測試,避免覆蓋
def add(filename):
# 創建dom文檔
dom=minidom.parse(filename)
root=dom.documentElement
byCardNo=dom.getElementsByTagName('byCardNo')[0]
item=dom.createElement('item')
item.setAttribute('value','1007')
byCardNo.appendChild(item)
# 將dom對象寫入本地xml文件
with open('test.xml', 'w') as f:
dom.writexml(f,indent='\t',addindent='\t',encoding='utf-8')
示例xml
<?xml version="1.0" encoding="UTF-8"?>
<ALARM alarminfo="NET_DVR_ACS_ALARM_INFO">
<byCardType value="1" />
<byCardNo value="-" >
<item value ="9990000001"/>
<item value ="9990000002"/>
</byCardNo>
</ALARM>