如何使用selenium webdriver计算网页上可用的图像数量?网页包含大量图像,其中一些是可见的,一些是隐藏的(显示:无).我只想计算可见(不隐藏)的图像.
我试过这个,但它不适用于只有可见的图像.
@Test
public void imagetest()
{
driver.get("http://uat.tfc.tv/");
List<WebElement> listwebelement = driver.findElements(By.className("img-responsive"));
int i=0;
for (WebElement Element : listwebelement) {
i = i+1;
System.out.println(Element.getTagName());
System.out.println(Element.getText());
String link = Element.getAttribute("alt");
System.out.println(link);
}
System.out.println("total objects founds " + i);
}
最佳答案 在这里你想找出没有.页面中的图像,所以最好检查标签名称,如下所示:
driver.findElements(By.tagName("img")
这是完整的代码供您参考
@Test
public void findNoOfDisplayeImages() throws InterruptedException
{
WebDriver driver=new FirefoxDriver();
Integer counter=0;
driver.get("http://uat.tfc.tv/");
Thread.sleep(20000);
List<WebElement> listImages=driver.findElements(By.tagName("img"));
System.out.println("No. of Images: "+listImages.size());
for(WebElement image:listImages)
{
if(image.isDisplayed())
{
counter++;
System.out.println(image.getAttribute("alt"));
}
}
System.out.println("No. of total displable images: "+counter);
driver.close();
}