如何使用Selenium,Java从div元素获取文本?

时间:2019-03-15 08:11:19

标签: java html selenium automation qa

我正在寻找一种从FireBase和Appsflyer上的div元素中获取“总计安装数”的方法。

number needed

我尝试使用元素的XPath或id选择器,但它们不起作用。我想问题出在getText()函数和Inner HTML上。

我对前端开发不是很了解,所以请解释我应该使用哪种方法。 这是该元素的html代码。 html code

2 个答案:

答案 0 :(得分:0)

您可以通过在className:getText()上使用af-kpi-box-footer方法来获取安装总数和文本,例如:

WebElement totalInstallsElement = driver.findElement(By.className("af-kpi-box-footer"));
String totalInstallsText = totalInstallsElement.getText();

totalInstallsText字符串将为您提供文本Total Installs: 638

更新后的答案(使用xpath)

WebElement totalInstallsElement = driver.findElement(By.xpath("//h5[@class='af-kpi-box-footer']"));

答案 1 :(得分:0)

如果无法获取文本值,请尝试获取innerHTML值。尝试任何一种方法。看看是否可行。

选项1:

WebElement Element1 = driver.findElement(By.cssSelector("h5.af-kpi-box-footer"));
System.out.println(Element1.getAttribute("innerHTML"));

选项2

WebElement element2=driver.findElement(By.cssSelector("h5.af-kpi-box-footer"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
System.out.println(executor.executeScript("return arguments[0].innerHTML", element2));