【问题标题】:How to extract the text from the sibling text nodes of the strong tag using Selenium and Java如何使用 Selenium 和 Java 从强标签的兄弟文本节点中提取文本
【发布时间】:2020-11-01 22:56:34
【问题描述】:

有如下52个页面对象,所有这些对象都有Strong标签,其中包含一个名为“Gideon”的字符串。 我怎么可能通过 findElements 方法获得所有这些?

【问题讨论】:

    标签: java selenium xpath webdriverwait expected-condition


    【解决方案1】:

    “引号” 位于 文本节点 内。因此,要检索文本,您必须为visibility_of_all_elements_located() 诱导WebDriverWait,您可以使用以下任一Locator Strategies

    • xpath:

      List<WebElement> parentElements = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//strong[text()='Gideon']//..")));
      for (WebElement parentElement:parentElements)
          System.out.println(((JavascriptExecutor)driver).executeScript("return arguments[0].lastChild.textContent;", parentElement).toString());
      
    • xpath 前面有

      List<WebElement> parentElements = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//strong[text()='Gideon']//preceding::p[1]")));
      for (WebElement parentElement:parentElements)
          System.out.println(((JavascriptExecutor)driver).executeScript("return arguments[0].lastChild.textContent;", parentElement).toString());
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-29
      • 1970-01-01
      • 2020-03-25
      • 2022-12-02
      • 1970-01-01
      • 2021-03-05
      • 1970-01-01
      相关资源
      最近更新 更多