Python 读取xml文件错误:ExpatError: not well-formed

 createElement参数的第一个字符不能是数字

ExpatError: not well-formed (invalid token): line 2, column 1

  今天在编写xml文件时发现使用minidom写的xml文件没办法读取,提示上面的错误,网上搜索了很久都说跟编码有关,可检查来检查去,编码都是‘utf-8’,没错啊···   整了好久都不行,于是就一条一条结点的往文件里写,后来让我发现createElement创建时,后面的字符串如果第一个字符是数字,就会出现该问题,于是把所有结点都检查一编,去处那种情况,果真文件可以正常读取了····

from xml.dom import minidom

doc = minidom.Document()
node = doc.createElement('test')    
node.setAttribute('你好', '我好')
doc.appendChild(node)
f = open(r'11.xml', 'w')
doc.writexml(f, "", "\t", "\n", "utf-8")
f.close()
doc = minidom.parse(r'11.xml')
print doc.toxml()

这样的xml是无法读取的

<?xml version="1.0" encoding="utf-8"?>
<1test 你好="我好"/>

这个就可以读取

<?xml version="1.0" encoding="utf-8"?>
<test 你好="我好"/>

你可能感兴趣的:(xml,python,createElement,minidom)