Объединение нескольких файлов XML - PullRequest
0 голосов
/ 26 июня 2018

У меня есть каталог 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 Copy, и не удалось открыть, сказал мне неизвестную кодировку MS932, хотя этов ISO-8859-1.Та же ошибка, что я получил при попытке открыть с помощью lxml, а не xml в python.Вручную воссоздал новый XML, не совсем решение, ну да ладно.

Спасибо

...