我正在使用下面的代码来捕获网站每个页面的屏幕截图。它可以工作,但有时某些页面加载延迟 1 到 2 秒/秒,我被一个旋转的 gif 圈子用“请稍候...”消息轰炸。
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("c:\\tmp\\screenshot.png"));
使用 Firebug,看起来这可能是罪魁祸首:
<div class="blockUI blockMsg blockPage" style="z-index: 1011; position: fixed;
padding: 15px; margin: 0px; width: 20%; top: 40%; left: 40%; text-align: center;
color: rgb(255, 255, 255); border: medium none; background-color: rgb(0, 0, 0);
cursor: wait; opacity: 0;">
<img src="/images/front/loading.gif"/>
<br/>
<strong>Please wait...</strong>
</div>`
我的问题是:如何计时我的屏幕截图以避免这种情况?Thread.sleep(2000) 有效,但我宁愿远离它。我还检查了页面上是否存在元素,它们在那里,但是这条消息妨碍了。
感谢任何建议。谢谢。
**编辑添加了一些被截断的代码(来自 Firebug)。