gpt4 book ai didi

internet-explorer - 使用 Internet Explorer 驱动程序在 Selenium 中找不到任何元素

转载 作者:行者123 更新时间:2023-12-03 22:51:36 25 4
gpt4 key购买 nike

无论使用的页面或选择类型如何,我都无法让 Selenium 使用 Internet Explorer 驱动程序识别任何元素。

String iedriver = "C:\\selenium-server\\IEDriverServer.exe";
System.setProperty("webdriver.ie.driver", iedriver);
WebDriver driver = new InternetExplorerDriver();
driver.get("http://www.google.com");
WebElement element = driver.findElement(By.xpath("//body"));

通过 xpath 选择给出 org.openqa.selenium.InvalidSelectorException: xpath 表达式“//body”无法计算或不会生成 WebElement。其他选择类型也失败:
WebElement element = driver.findElement(By.cssSelector("body"));

或者
WebElement element = driver.findElement(By.tagName("body"));

或者
 WebElement element = driver.findElement(By.name("q"));

通过 CSS 选择器、名称或标签名称总是会产生 org.openqa.selenium.NoSuchElementException

所有选择都可以与 Firefox 驱动程序、Chrome 驱动程序甚至 Html 单元驱动程序完美配合。

浏览器正确启动,页面按预期加载。 driver.getCurrentUrl(); driver.getPageSource(); 返回预期值。

我尝试在选择元素之前引入显式和隐式等待,但没有效果,使用
Thread.sleep(10000); 

或者
WebDriverWait(driver,60).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//body")));

还尝试单步执行代码以手动等待要显示的元素。

我尝试的其他事情包括 1) 在所有区域中将安全设置设置为相同级别 2) 禁用增强保护模式 3) 在注册表中设置 FEATURE_BFCACHE

我正在使用 Selenium 和 IEDriverServer 版本 2.41。在本地和远程运行时都观察到该问题。环境在 Windows 7 64 位上,使用 IE10 64 位和 IEDriverServer 64 位。在使用 IEDriverServer 32 位的 IE11 32 位上观察到同样的问题。我在此处使用 www.google.com 作为可公开查看的测试,但在我们的内部站点上也观察到了该问题。

最佳答案

对于在 IE11 上遇到此问题的用户,原因如下:Microsoft 通过 Windows Update[1] 发布了更新 KB3025390,作为其正常“周二补丁”更新周期的一部分。对于大多数用户,无需用户交互即可下载和安装此更新。当与 IE11 一起使用时,此更新会破坏 IE 驱动程序。

https://groups.google.com/forum/m/#!topic/selenium-users/TdY_rRNF-gw

修复,删除更新。
目前没有 Selenium 更新来解决这个问题。

关于internet-explorer - 使用 Internet Explorer 驱动程序在 Selenium 中找不到任何元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23770843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com