2016-03-07 54 views
2
<li class="lvprice prc"> 
    <span class="bold"> 
    $252.00 
     <div class="medprc"> 
      <span class="prcVS">Trending at</span> 
      <span class="median"> 
      $259.85 

另外,Screenshotenter image description here如何获取没有所有子节点文本的直接元素的文本

我想getText,使其返回 “$ 252.00” 目前,getText返回 “$ 252.00为$ 259.85的趋势”。 所以它从直接元素获取文本,并且还包括子节点的文本。我目前使用findElements(By.cssSelector("li.lvprice.prc"))

我看着WebElement.getText()文档。它的构建是为了抓取所有的子节点文本。

我可以使用正则表达式来只从字符串中获取252.00,但我不确定这是最专业的方式。

任何提示?

回答

1

你可以得到整个文本,比去除孩子文本

String allText = driver.findElement(By.cssSelector("li.lvprice.prc")).getText(); 
String childrenText = driver.findElement(By.cssSelector("div.medprc")).getText(); 
String parentText = allText.replace(childrenText, ""); 
相关问题