Python 解析XML
http://www.cnblogs.com/ifantastic/archive/2013/04/12/3017110.html
http://blog.csdn.net/kiki113/article/details/4052584
实现XML:增删改查,遍历 ,支持中文。
try:
import xml.etree.cElementTree as ET
except ImportError:
import xml.etree.ElementTree as ET
def indent(elem, level=0):
i = "\n" + level*" "
print 'indent begin-----------'
if len(elem):
print 'elem.text = ' ,elem.text
print 'elem.tail = ' ,elem.tail
if not elem.text or not elem.text.strip():
print ' change line and add some tab space ----begin --'
elem.text = i + " "
print ET.tostring(elem,'utf-8')
print ' change line and add some tab space ----end--'
if not elem.tail or not elem.tail.strip():
print 'only change line but not add space ----begin--'
elem.tail = i
print ET.tostring(elem,'utf-8')
print ' only change line but not add space ----end--'
for elem in elem:
indent(elem, level+1)
if not elem.tail or not elem.tail.strip():
elem.tail = i
else:
print 'level %d ,not elem.tail or not elem.tail.strip() ---begin------' %(level)
if level and (not elem.tail or not elem.tail.strip()):
elem.tail = i
print ET.tostring(elem,'utf-8')
print 'level %d ,not elem.tail or not elem.tail.strip() ---end------' %(level)
tree = ET.parse('test.xml') #载入数据
root = tree.getroot()
indent(root)
print ET.tostring(root, 'utf-8')