我有这种XML:
<item attribute = "val1"> blabla 1 </item>
<item attribute = "val2"> blabla 11 </item>
<item attribute = "val2"> blabla 12 </item>
<item attribute = "val1"> blabla 2 </item>
<item attribute = "val2"> blabla 21 </item>
我想收集包含item
和element
的{{1}}。
为此,我使用XPath表达式(在lxml Python库中):
attribute = val2
其中firstItem.xpath('./following-sibling::item[.//@attribute = "val2"]')
是带有firstItem
的元素。
因此,这项工作找到了三个attribute = "val1"
并给了我,但这并不是我要找的。 p>
我希望请求将第一个元素<item attribute = "val2">
的第一个元素之后的两个元素<item attribute = "val2">
提取给我,并在到达下一个<item attribute = "val1">
时停止。当我在第二个<item attribute = "val1">
上运行请求时,它将给我最后一个<item attribute = "val1">
。
当然,就我而言,我可以有两个以上的<item attribute = "val2">
。
那么如何在XPath请求中告知停止搜索到达的第一个<item attribute = "val1">
吗?