Python で XML シートの解析に取り組んでいます。XML には次のような構造があります。
<layer1>
<layer2>
<element>
<info1></info1>
</element>
<element>
<info1></info1>
</element>
<element>
<info1></info1>
</element>
</layer2>
</layer1>
layer2 がなければ、info1 のデータに問題なくアクセスできます。ただ、layer2は本当に困ります。彼らの私はinfo1に次のように対処できます:root.firstChild.childNodes[0].childNodes[0].data
だから私の考えは、次のように似たことができるということでした:root.firstChild.firstChild.childNodes[0].childNodes[0].data
これが私の問題を解決した方法です: from xml.etree import cElementTree as ET
xml.etree から cElementTree を ET としてインポート
tree = ET.parse("test.xml")
root = tree.getroot()
for elem in root.findall('./layer2/'):
for node in elem.findall('element/'):
x = node.find('info1').text
if x != "abc":
elem.remove(node)