我在Java/HTML5 Web项目上使用Selenium WebDriver Java API。我们不使用很多ID,所以我使用xPath来隔离值。在以下HTML代码片段中,当我使用常规方法获取值时,会返回标签和值文本。如何使用Selenium从无ID的div中获取值
<div class="gf-item col-sm-4"><label>First Name</label>Emma</div>
有没有一种优雅的方式来使用Selenium获取值(“Emma”)?
谢谢!
我在Java/HTML5 Web项目上使用Selenium WebDriver Java API。我们不使用很多ID,所以我使用xPath来隔离值。在以下HTML代码片段中,当我使用常规方法获取值时,会返回标签和值文本。如何使用Selenium从无ID的div中获取值
<div class="gf-item col-sm-4"><label>First Name</label>Emma</div>
有没有一种优雅的方式来使用Selenium获取值(“Emma”)?
谢谢!
我相信的XPath将
//div[@class="gf-item col-sm-4"]/label/following-sibling::text()
有可能是这是一个漂亮的方法。我会创建两个选择器。一个只返回你想排除的内容,一个返回你想要的和你不需要的内容。然后使用一些Java来比较和删除你不想要的东西。我不做xpath,所以这是所有的CSS选择器。
首先, '大' 选择 - 收益 '第一NameEmma'
$$("div.gf-item")
那么 '微调' 选择来定义我们不想要的东西 - 回报“名字”
$$("div.gf-item>label")
然后一些Java来比较和删除'额外'的东西,这将删除'名字',并只留下'艾玛'
String big = getText(big);
String trim = getTextText(trim);
String desiredText = big.replaceAll(trim, "");