如何构造一个返回所有元素集的xpath

时间:2015-09-04 08:26:47

标签: xpath

考虑这些xpath表达式:

//*[@id="searchResults"]/div[1]/div[1]/h2/span
//*[@id="searchResults"]/div[3]/div[1]/h2/span
//*[@id="searchResults"]/div[5]/div[1]/h2/span

对于您的信息,搜索结果类中的div是文章searchResult,而文章里面的一个搜索结果是标题。

我不确定如何构造匹配上述所有三个元素的xpath。是否有工具或如何指导?

由于

2 个答案:

答案 0 :(得分:3)

使用位置功能

//*[@id="searchResults"]/div[position()=1 or position()=3 or position()=5]/div[1]/h2/span

答案 1 :(得分:1)

如果'all',则表示偶数位置索引中的所有 div,那么您可以使用mod运算符来检查:

//*[@id="searchResults"]/div[position() mod 2 = 1]/div[1]/h2/span

但是如果'all'字面意思是 all ,那么你不需要索引来返回所有匹配的元素:

//*[@id="searchResults"]/div/div[1]/h2/span