当前位置: 首页 > 知识库问答 >
问题:

Xpath所需标记之前的第一个文本

陆甫
2023-03-14
<dl>
    <div>
       <div>foo</div>
    <div>
    "I need getting only this text"
    <dd>
       <div>foo</div>
       <div>foo</div>
    </dd>
    <div>
        <div>foo</div>
    <div>
    "I need getting only this text"
    <dd>
        <div>foo</div>
        <div>foo</div>
    </dd>
</dl>

//text()[(Previon::dd)][Last()]

但现在对我来说,这一切都有效了,因为div的count带有“foo”-未定义。我需要一些xpath,比如//dl/text(),但返回'dl'的直接祖先,没有更深的层次。

共有1个答案

别旻
2023-03-14

所以我只需要在所需标记之前获得第一个文本

这样怎么样:

//dd/preceding-sibling::text()[1]

也就是说,找到dd标记,然后对每个标记取最近的前一个兄弟文本节点。在您的示例中,这将返回一组两个文本节点,每个节点包含文本

'
    "I need getting only this text"
    '
 类似资料:
  • 这里我只希望输出为“Reported by:rhjj”。但是当我使用XPATH时//div[contains(@class,“from”)]//span[contains(@class,“label”)]“us”也会被选中。除了使用text()和使用substring_before逗号之外,是否还有其他方法来选择仅由:Rhjj报告。即使这样也不一致 //div[contains(@class,“f

  • 注意:我的应用程序在旧的Android5上运行良好。但是我在更新的版本中解决了这个问题。现在我已经添加了登录和旋转的代码....我想这可能是图像的密度像素的问题…或者把东西放在错误的地方。我需要专家的时间。好心解决我的问题。 .提前感谢

  • 对于以下超文本标记语言: 我们可以将第一行与这个xpath匹配-- 我们无法将第2行与此xpath匹配-- BR标记正在运行。Selenium IDE的“Select”功能可以获取DIV标记xpath,但不能深入到它所包含的文本中。 有什么建议吗?

  • 我有一个自动化的python脚本来检查DOM中的任何更改。我有一个有效的xpath: 但是它给了我比我需要的更多的输出,其中一些会导致错误。所以我想从xpath中获取我需要的抽象项目,所以我尝试使用这样的东西: 但它不起作用,所以甚至可以用这么多标记搜索xpath吗?

  • 下面的HTML代码需要xpath 仅供参考:xpath将具有排除邮政编码的div text(),以便返回剩余的div和span文本。有时postalCode不在这个div标记中。因此,如果它存在,跳过它,如果不返回整个div标记文本。

  • 我试图获取提供的html(跨度)之间的数据(在本例中为31) 以下是原始代码(来自chrome中的inspect elements) 我有一个包含页面源代码的富文本框,下面是相同的代码,但是在富文本框的第51行: 我将如何做到这一点?我已经尝试了几种方法,但似乎都不适合我。 我试图从这一页检索点值:http://www.subxcess.com/sub4sub.php根据谁潜艇你的数量变化。