javascript - 我尝试使用 selenium java 一个一个地打开多个链接,但是在做时我得到了陈旧的元素引用异常
问题描述
在这些代码中,我使用 try 和 catch 来处理异常,但这些是否正确
WebElement openlinks = driver.findElement(By.xpath("(//ul[@class='siteFormsUL'])[4]"));
List<WebElement> links = openlinks.findElements(By.tagName("a"));
links.size();
System.out.println(links.size());
Thread.sleep(3000);
for (int i = 0; i < links.size(); i++) {
try {
links.get(i).click();
Thread.sleep(4000);
driver.findElement(By.xpath("//button[contains(text(),'Cancel')]")).click();
Thread.sleep(4000);
} catch (StaleElementReferenceException e) {
System.out.println(e) ;
}
}
解决方案
推荐阅读
- javascript - Angular 7 的 [style.background-image] 属性中未显示动态图像路径
- node.js - 调用回调后返回 null 的 Lambda 函数
- apache-nifi - 在 NiFi 上如何区分来自两个不同 Kakfa 的消息?
- laravel-5.6 - 电子邮件不是通过 Laravel 中的 Mandrill 发送的
- c# - 删除委托的目标后如何安全地使用操作委托
- javascript - 图标签中的后备图像加载
- java - 在 Java 中实现 Perl 的 unpack 方法功能
- php - 使用未定义的常量 CURLOPT_CONNECTTIMEOUT - 假定为“CURLOPT_CONNECTTIMEOUT”(这将在 PHP 的未来版本中引发错误)
- sorting - 如何在 solr 中按整数过滤,将集合中的 0 作为最后一个结果?
- flask - 当我跑到 Flask 时,我收到“ImportError”