如何从webelement单独检索可见文本?

时间:2015-11-24 15:53:08

标签: javascript java selenium automation

如何使用java从webelement(Selenium)获取UI上可见的文本(不包括隐藏文本)?我尝试过使用javascript。例如:

if which gpg >/dev/null; then 
    echo "Installed"
# ...
fi

我只想检索"这部分是可见的可见的"来自班级'消息'。

2 个答案:

答案 0 :(得分:3)

根据getElementText chapter of the latest WebDriver specification,如果您只是获取元素的文本,selenium只会返回可见文本:

driver.findElement(By.id("myid")).getText();

答案 1 :(得分:0)

这段代码对我有用。

public String getVisibleTextFromElement(WebElement elem)
{
    String visibleText= (String) getJavaScriptExecutor().executeScript("var clone = $(arguments[0]).clone();"
            + "clone.appendTo('body').find(':hidden').remove();"
            + "var text = clone.text();"
            + "clone.remove(); return text;", elem);
    visibleText=visibleText.replaceAll("\\s+", " ");
    return visibleText;
}