合并多个XML文件

时间:2018-06-25 23:36:04

标签: python xml merge xml-parsing elementtree

我有一个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,不是真正的解决方案,但是很好。

谢谢

0 个答案:

没有答案