Pythonを使用し、外部ライブラリを使用せずに、複数のXMLファイルをマージしようとしています。XMLファイルにはネストされた要素があります。
サンプルファイル1:
<root>
<element1>textA</element1>
<elements>
<nested1>text now</nested1>
</elements>
</root>
サンプルファイル2:
<root>
<element2>textB</element2>
<elements>
<nested1>text after</nested1>
<nested2>new text</nested2>
</elements>
</root>
私が欲しいもの:
<root>
<element1>textA</element1>
<element2>textB</element2>
<elements>
<nested1>text after</nested1>
<nested2>new text</nested2>
</elements>
</root>
私が試したこと:
この答えから。
from xml.etree import ElementTree as et
def combine_xml(files):
first = None
for filename in files:
data = et.parse(filename).getroot()
if first is None:
first = data
else:
first.extend(data)
if first is not None:
return et.tostring(first)
私が得るもの:
<root>
<element1>textA</element1>
<elements>
<nested1>text now</nested1>
</elements>
<element2>textB</element2>
<elements>
<nested1>text after</nested1>
<nested2>new text</nested2>
</elements>
</root>
私の問題を見て理解していただければ幸いです。私は適切な解決策を探しています、どんなガイダンスも素晴らしいでしょう。
問題を明確にするために、私が持っている現在の解決策を使用して、ネストされた要素はマージされません。