java selenium爬取验证图片是否加载完成

爬虫任务里发现有部分图片没有加载完成就进行文件流上传,导致有一些图片是空白,需要判断一下:

首选获取image标签元素:

WebElement image = driver.findElement(By.cssSelector("div#media_container > img"));
boolean isVisible = this.IsImageVisible(driver, image);

然后判断:

private boolean IsImageVisible(WebDriver driver,WebElement image){
Boolean imageLoaded1 = (Boolean) ((JavascriptExecutor)driver).executeScript("return arguments[0].complete && typeof arguments[0].naturalWidth != \"undefined\" && arguments[0].naturalWidth > 0", image);
if (!imageLoaded1)
{
return false;
}
return true;
}

complete 属性判断有没有加载完成,naturalWidth 判断该图片是否存在

posted on 2017-06-26 14:17  断剑重铸之时  阅读(692)  评论(0编辑  收藏  举报