如何使用java代码从HTML中获取文本?

时间:2014-12-15 09:12:49

标签: java selenium testng

在此HTML代码中,我需要使用selenium testng获取“状态”文本。

          <div class="dojoxGridSortNode">Status</div>   

我使用了代码

    public static String gettext(){
   String Value = null;
try{
    Value = webElement.getAttribute("text");
    APP_LOGS.debug("Get Text on"+locatorDescription);
   }

使用这段代码,我无法从html代码中获取文本。是否有其他选项可以从html属性中获取文本?我也使用.getText()方法。

提前致谢

2 个答案:

答案 0 :(得分:0)

除了Naveen的评论,你可以尝试 -

Document doc = Jsoup.connect(<YOUR URL>).get();
Elements elements= doc.select("div[class=dojoxGridSortNode]");
String str = elements.text();

您可以从这里下载Jsoup罐子 - http://jsoup.org/download

答案 1 :(得分:0)

您需要将WebElement作为参数传递,以正确使用您的方法。

webelement可以是这个(根据HTML代码段,您已添加):

WebElement element = driver.findElement(By.xpath("//div[@class='dojoxGridSortNode']"));

并且,您的方法可以修改为:

  public static String gettext(WebElement webElement){
   String Value = null;
try{ 
    Value = webElement.getText();
    APP_LOGS.debug("Got Text: "+Value); 
    return Value;
   }catch(Throwable e){
     //Catch body
    } 
 }

您可以将相关的WebElement作为参数传递给上面的方法并调用方法来获取所需的文本