我的XML文件没有标签,这使得解析不太友好。我试图找到一个元素并更改它:

...
    <dict>
        <key>Arguments</key>
            <dict>
                <key>TestArchive</key
                <string>testArchive.tar</string>
            </dict>
            ....
    </dict>
...


我想做的是获取并更改“ testArchive.tar”字符串,因为该字符串可能每次都会更改,因此我将TestArchive用作锚点

from xml.etree import ElementTree
with open ('file.xml', 'rt') as f:
    tree = ElementTree.parse(f)

for item in tree.iter():
    if item.text == "TestArchive":
         ....


如何获得下一个元素?在我的情况下,应该是我要寻找的商品?

最佳答案

您需要在关键元素上使用getnext()。这将获得下一个兄弟姐妹。

if item.text == "TestArchive":
    name = item.getnext()
    print name.text

07-24 09:28