匹配特定文本并使用 xpath 转到下一个 h1 元素

Match on certain text and go to the next h1 element using xpath

我想获取元素内特定文本之后的文本,即。 'Projected earning growth'。我想获得价值 18.10% 。我要遵循的模式是查找上面的某个文本,然后获取紧跟 h2 元素之后的文本。

是否可以使用一个 xpath 表达式同时执行这两个步骤?

  1. 匹配特定文本的 div 'Projected earning growth'
  2. 转到 div 之外的直接 h1 元素(我必须在这里跳两个 div 才能到达 h1 元素)

如何匹配文本并通过 xpath 到达下一个直接的 h1 元素?

<div>
    <div class="p small mb-8 box-label text-left text-blue-500">
        <div class="tt-container">
            <button aria-label="open tooltip" class="button link" type="button" role="tooltip" aria-expanded="false">
                Projected earning growth
            </button>
        </div>
    </div>
    <h2 class="mb-8 text-left">18.10%</h2>
</div>

如果我没理解错的话,你想从 Projected earning growth 转到 h2 标签中的 18.10%。不确定你为什么提到 h1 标签。

//button[contains(text(),'Projected earning growth')]/../../following-sibling::h2

应该完成工作,

请注意 /.. 在 HTMLDOM 中升级。

这是针对您遇到的问题的直接解决方案。

我还建议您查看 xpath parentancestor.