Xpath:选择没有孩子的h2父级

时间:2013-05-27 14:23:17

标签: xpath

我有以下html:

<div class="stack">
    <h2 class="overflow">
       <img src="http:..">
       text
    </h2>
    <div class="sublist">
        <table>
        ...
        </table>
    </div>

    <h2 class="overflow">
        <a href="http://...">link</a>
    </h2>
</div>

正如你所看到的,.sublist div总是跟随一个with和一些文本,就像div是h2的子列表(h2是子列表的标题)。另一个包含锚标记。

我想获得div .sublist之前的所有h2标签。

这是我当前的xpath子句:

//div[@class="stack"]/h2/*[not(descendant::a)]

我最终获得了不同的元素(a,div,img),但是h2元素。

2 个答案:

答案 0 :(得分:1)

尝试preceding-sibling

//div[@class="stack"]/div[@class="sublist"]/preceeding-sibling::*

答案 1 :(得分:1)

我想得到div .sublist之前的所有h2标签。

怎么样:

//div[class="sublist"]/preceding-sibling::h2