我使用Selenium浏览多个网站并存储他们的标记。
为了加快速度,我设置了一个pageLoadTimeout来为加载时间太长的网站抛出异常:
driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);
然而,这似乎不适用于不断重定向的网站。例如,请访问此网站:https://www.pickupthevalues.com/SignUp.aspx。
有没有办法让这些网站超时?我不关心内容,我只想从我的driver.get(url)
声明返回。
答案 0 :(得分:0)
你可以等到js返回页面完成状态。
private WebDriverWait wait;
try
{
wait = new WebDriverWait(driver, TimeSpan.FromSeconds(60));
wait.Until(driver1 => ((IJavaScriptExecutor)driver).ExecuteScript("return document.readyState").Equals("complete"));
}
catch(Exception ex)
{}