仅从父级获取文本

时间:2014-02-14 03:35:45

标签: java selenium xpath selenium-webdriver

在网站上它有这样的页脚

<td class=resutinfo >
    Displaying 1 - 10 of 41 records Results per page: 
    <select onchange="javascript:gotoRow(1);" name="pageSize>
        <option value=10, selected="true> 10 </option>
        <option value=20, > 20 </option>
        <option value=10, > 30 </option>
    </select>
</td>

问题:

当我对此getText()使用<td>时,它会显示如此值

  

显示1 - 10(共41条记录)每页显示结果:10 20 30

但我只需要我不想要的选择选项。

  

显示1 - 10(共41条记录)每页显示结果:

请你给出如何获取该字符串的建议。

2 个答案:

答案 0 :(得分:3)

我们的想法是先获取<td class="resutinfo">的文字,这应该是

  

显示1 - 10(共41条记录)每页显示结果:10 20 30

然后你会得到<select>的文字,应该是

  

10 20 30

然后用空字符串替换它以删除。

String tdText = driver.findElement(By.xpath(".//td[@class='resutinfo']")).getText();
String selectText = driver.findElement(By.xpath(".//td[@class='resutinfo']/select")).getText();
tdText.replace(selectText, "").trim();

答案 1 :(得分:-1)

或纯xpath

.//td[@class='resutinfo']/child::text()