我目前面临的 XML 看起来像这样:
<ID>345754</ID>
这包含在层次结构中。我已经解析了 xml,并希望通过搜索“345754”来找到 ID 节点。
vartec 的答案需要更正(对不起,我不确定我能做到),它应该是:
xmldoc = xml.dom.minidom.parse('your.xml')
matchingNodes = [node for node in xmldoc.getElementsByTagName("ID") if
node.firstChild.nodeValue == '345754']
它有两个问题:(i)标签名称区分大小写,因此匹配"id"
不起作用和(ii)对于元素节点,您.nodeValue
需要None
访问包含值的元素节点内的文本节点你要。
xmldoc = minidom.parse('your.xml')
matchingNodes = [node for node in xmldoc.getElementsByTagName("id") if node.nodeValue == '345754']
也可以看看: