如果H2包含某些文本,如何选择H3的内容

时间:2019-05-20 10:25:28

标签: html xpath

如果H3元素正上方的H2包含某个文本,则我想刮擦H3元素的内容,在这种情况下,H2应该包含“ Course advanced Sydney”。

但是我无法使Xpath正常工作。谁能解决这个问题?不幸的是,我对Xpath并不十分了解。但我了解基本知识。

我用Xpath尝试过:

//div[@id='training']/article/[h2/text() = 'Course advanced Sydney']/h3

代码:

    <div id="training" class="overview">
        <article>
            <h2>Course beginner Amsterdam</h2>
            <h3>20 May 2019</h3>
        </article>
        <article>
            <h2>Course advanced Sydney</h2>
            <h3>27 May 2019</h3>
        </article>
        <article>
            <h2>Course beginner Sydney</h2>
            <h3>6 June 2019</h3>
        </article>
        <article>
            <h2>Course medior New York</h2>
            <h3>16 June 2019</h3>
        </article>
    </div>

我希望输出为“ 2019年5月27日”,但实际输出为“#N / A”

1 个答案:

答案 0 :(得分:-1)

h3元素不是h2的后代,而是它的同级元素。因此,使用

//div[@id='training']/article/h2[contains(., 'Course advanced Sydney']/following-sibling::h3