我有一个xml文件目录,我正在尝试将它们全部合并为一个大xml文件
full = ET.Element('dataset')
for filename in glob.glob(os.path.join(path, '*.xml')):
tree = ET.parse(filename, parser=xmlp)
root = tree.getroot()
for pair in root: #root.iter('pair'):
full.append(pair)
我尝试了上面的代码并得到了这个小错误:
ParseError:分析完成:第330行,第0列
问题是只有第一个文件附加到新的xml文档中,如何避免这种情况?还是有更好的合并方式? (结构相同)
编辑:它们具有以下结构:
<dataset>
<pair>
<t1></t1>
<t2></t2>
</pair>
...
</dataset>
更新:使用过XML复制编辑器,无法打开,告诉我,即使在ISO-8859-1中,MS932的编码也不明。我从尝试使用lxml而不是python中的xml打开时遇到了同样的错误。手动重新创建一个新的xml,不是真正的解决方案,但是很好。
谢谢