【发布时间】:2015-09-24 18:59:03
【问题描述】:
我有下一个 xml 示例结构
<root>
<rec xmlns="some_url">
<itemNumber>
<number>1</number>
</itemNumber>
</rec>
<rec>
<itemNumber>
<number>2</number>
</itemNumber>
</rec>
<rec>
<itemNumber>
<number>2</number>
</itemNumber>
</rec>
</root>
问题是这里是xmlns,要找到一些元素,我需要通过本地名称找到它。例如查找所有<rec> 元素:
root.xpath("*[local-name() = 'rec']")
要查找所有itemNumber:
root.xpath("*[local-name() = 'rec']/*[local-name() = 'itemNumber']")
主要障碍是命名空间。但是不要建议我删除名称空间,因为我的 xml 文档非常庞大,而且需要额外的时间。
我需要返回符合条件的<rec> 元素,例如<number> 等于2。在这种情况下,它将返回
<rec>
<itemNumber>
<number>1</number>
</itemNumber>
</rec>
【问题讨论】: