我使用以下代码查找某个元素并使用以下XPath
提取它。但在某些页面中它们不可用。
我该怎么办?
仅供参考以下代码失败。
String founded=driver.findElement(By.xpath("//*[contains(text(),'Founded')]//following::dd[1]")).getText();
if(founded.isEmpty())
{
founded="NA";
System.out.println(founded);
}
答案 0 :(得分:0)
您应该尝试使用WebElement.findElements()
而不是返回WebElement
列表或空列表。所以只需检查下面的空列表: -
String founded = "";
List<WebElement> list = driver.findElements(By.xpath("//*[contains(text(),'Founded')]//following::dd[1]"));
if(list.isEmpty() || list.get(0).getText() == null || list.get(0).getText().isEmpty())
{
founded = "NA";
}else {
founded = list.get(0).getText();
}
System.out.println(founded);