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是无法读取的

<1test你好="我好"/>

这个就可以读取

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐