java - 如何捕获 Selenium 中多个段落标签的所有换行文本?

标签 java selenium selenium-webdriver xpath

我面临一个问题。我制作了一个用于捕获段落标记值的函数。对于单个段落来说,它工作得很好,但是有很多段落标签。我如何在函数中检索这些值?

public String captureText(WebDriver driver) {
    String captureValue;
    captureValue = driver.findElement(By.xpath("//span[text()='Subtitles']//following::p[1]")).getText();
    return captureValue;

}

我的函数如上所示。

最佳答案

尝试使用以下代码:

//create a list to store all the paragraph text values
//Store all the paragraphs element in another list
public List<String> captureText(WebDriver driver) {

    List<String> allParagraphsValues = new ArrayList<String>();
    List<WebElement> allParagraphs = driver.findElements(By.xpath("//span[text()='Subtitles']//following::p"));

    //Loop through all the Paragraph elements and add the text in a list
    for(WebElement ele : allParagraphs){
          allParagraphsValues.add(ele.getText());
    }

    return allParagraphsValues;

}

关于java - 如何捕获 Selenium 中多个段落标签的所有换行文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60943141/

相关文章:

java - 不使用 web.xml 加载应用程序上下文

java - 使用不同的参数在TestNG中重复整个测试类

python - 如何使用 Selenium WebDriver 打开网站并填写输入

java - Selenium Grid 和 RemoteWebDriver

java - 当我的测试失败且 chrome 浏览器关闭之前(@After)时,如何对 chrome 浏览器进行屏幕截图

Java minmax 算法返回空移动并且无法正确撤消移动

java - Selenium Firefox 57 无法连接到二进制/本地主机

java - Selenium Chrome 驱动程序选择证书弹出确认不起作用

java - 如何从 Selenium java 获取 Java 数组中下拉列表的选项值

java - ChromeDriver 和 WebDriver 有什么区别?