我使用minidom在Python中解析xml文档。
我有一个元素:
<informationRequirement>
<requiredDecision href="id"/>
</informationRequirement>
我唯一需要的是子元素中的href值,但它的标记名称可能不同(例如 requiredKnowledge 而不是 requiredDecision ;它始终以需要)。 如果标签始终相同,我会使用类似的东西:
element.getElementsByTagName('requiredDecision')[0].attributes['href'].value
但事实并非如此。知道标签名称的变化可以替代什么呢?
(总会有一个子元素)
答案 0 :(得分:0)
如果你总是保证有一个子元素,那就抓住那个元素:
element.childNodes[0].attributes['href'].value
然而,这很脆弱。一个(或许)更好的方法可能是:
hrefs = []
for child in element.childNodes:
if child.tagName.startswith('required'):
hrefs.append(child.attributes['href'].value)