0

所以我有一个巨大的 XML 文件,但只想要另一个文件中的一部分。因此我想提取它,然后我可以在不影响原始文件的情况下对其进行一些工作。

这是基本思想

<a>
      <otherethings> </otherthings>
      <b>
          <things> </thing>
      </b>
      <otherethings2></otherthings2>
</a>

简单地说我想将 b 提取到另一个文件并编辑它

这如何在python中完成

我目前正在尝试使用xml.etree.ElementTree

但似乎无法正确处理。

按照要求我的错误

1.

    tree = ET.parse('Data.xml')
    root = tree.getroot()
    rootelement = root.iter('b')
    tree._setroot(rootelement)
    root = tree.getroot()
    tree.write('Data2.xml')

2.

tree = ET.parse('Data.xml', 'b')
root = tree.getroot()
tree.write('Data2.xml')

老实说,我只是在猜测

不要误会我的意思,我确实在网上查过,但找不到任何东西。

4

1 回答 1

2

这应该有效。

from xml.etree import ElementTree as ET

tree = ET.parse('Data.xml')
for el in tree.iter('b'):
    towrite = ET.ElementTree(el)
    towrite.write('Data2.xml')
于 2014-10-15T15:41:08.457 回答