0

有以下 52 个页面对象,所有这些对象都具有包含名为“Gideon”的字符串的 Strong 标签。我怎么可能通过 findElements 方法获得所有这些? 在此处输入图像描述

4

1 回答 1

0

引号”文本节点内。因此,要检索文本,您必须诱导WebDriverWait并且 visibility_of_all_elements_located()您可以使用以下任一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());
    
于 2020-07-12T19:20:36.547 回答