虽然这大部分是重复的,并且可以在这里找到答案,但我已经做到了,因此我可以共享此python代码:
import os, os.path, sys
import glob
from xml.etree import ElementTree
def run(files):
xml_files = glob.glob(files +"/*.xml")
xml_element_tree = None
for xml_file in xml_files:
data = ElementTree.parse(xml_file).getroot()
# print ElementTree.tostring(data)
for result in data.iter('results'):
if xml_element_tree is None:
xml_element_tree = data
insertion_point = xml_element_tree.findall("./results")[0]
else:
insertion_point.extend(result)
if xml_element_tree is not None:
print ElementTree.tostring(xml_element_tree)
但是,此问题包含另一个帖子中未提到的另一个问题。示例XML文件不是有效的XML,因此不可能具有带有以下内容的XML标签:
<sample="1">
...
</sample>
不可能更改为以下内容:
<sample id="1">
...
</sample>