我需要一个解决方案,使用SeleniumWebDriver从IE11中的web应用程序下载PDF文件。请找到下面我正在尝试处理的弹出窗口。
下面是我尝试处理IE弹出窗口的方法,但不幸的是没有任何帮助。
>
我试图使用下面的AutoIT脚本使用AutoIT来处理这个场景。
睡眠(5000)
本地$hIE=wingthandle(“[Class:IEFrame]”)
本地$hCtrl=ControlGetHandle($hIE, "", "[ClassNN: DirectUIHWND1]")
如果WinExists($hIE,")然后
WinActivate($hIE,“”)
ControlSend($hIE,“,$hCtrl,“{F6}”)
睡眠(500)
ControlSend($hIE,“,$hCtrl,“{TAB}”)
睡眠(500)
控制发送($hIE,",$hCtrl,"{回车}")
恩迪夫
睡眠(25000)
虽然上面的AutoIT脚本工作正常,但在执行AutoIT脚本后,webdriver脚本挂起。即使是共同制度。出来在使用上述AutoIT脚本处理弹出窗口后,不会执行println语句。
我试图用机器人类处理这个弹出窗口,但运气不好,这似乎也不起作用。
我尝试通过以下路径进行一些注册表设置来禁用此IE弹出窗口:HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\AttachmentExecute\
执行某些注册表设置后,此弹出窗口将成功禁用。xlsx或。RDP文件,而不是用于。PDF文件。但在我的例子中,我有一个测试用例,我需要下载一个。pdf文件,并继续执行其他webdriver脚本。
伙计们,任何其他解决方法的建议都将不胜感激。
谢谢你,苏德亨德兰
我也有同样的问题。在这种情况下,使用IE时,单击按钮无法正常工作。我切换了使用sendKeys()
单击按钮以使其聚焦,然后按Enter键。
试试这个:
Robot robot;
try {
// pressing download button
button.sendKeys("""");
robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
// handling download
webDriver.wait(2000);
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_S);
webDriver.wait(200);
robot.keyRelease(KeyEvent.VK_S);
robot.keyRelease(KeyEvent.VK_ALT);
} catch (Exception e) {
e.printStackTrace();
}
您可以使用线程。sleep()
而不是驱动程序。wait()
,也应该可以工作。
问题内容: 我遇到的一种情况是,单击链接网页会打开一个弹出窗口。并且在弹出窗口打开之后,焦点位于弹出窗口中,并且主窗口被禁用。而且我无法将控件转移到弹出窗口。请看下面的代码。 我无法将控件从父窗口转移到弹出窗口。我知道以下命令。 但是它没有太大帮助。请帮我。 问题答案: 当我需要使用以下弹出窗口,关闭它并返回主窗口时,这是我使用的代码。当然,出于此答案的目的已对其进行了简化。它维护原始窗口(主窗口
如何使用Selenium WebDriver处理登录弹出窗口?我在这里附上了示例屏幕。我如何输入/输入用户名和密码到这个登录弹出/警报窗口?
我目前正在使用硒自动化应用程序,当单击按钮时会出现一个新的弹出窗口。我必须切换到该窗口并执行某些操作,例如搜索记录。 注意:父窗口和子窗口具有相同的标题。
我有一个情况显示在下面的SS。 我正在用selenium(Java)测试一些web应用程序,在一个瞬间我同时得到了4个弹出窗口。我想把他们全部解雇,但实际上我不能得到其中的3个。 我在搜索如何处理多个弹出窗口,发现了这个主题:如何在Selenium中处理多个报警弹出窗口确认?-但那不是我要找的。 第一次driver.switchTo().alert()返回一个警报,我可以将它取消。但是第二次,它是
问题内容: 我们正在针对现有代码库运行Selenium回归测试,并且Web应用程序中的某些屏幕使用弹出窗口作为中间步骤。 当前,我们在测试中使用以下命令: … 大多数情况下都可以使用 。偶尔测试将失败在与线 谁能建议一种更好,更 可靠的 方法? 另外,我们主要在IE6和7上运行这些测试。 问题答案: 有用!!只是为了让那些喜欢硒的人们更容易。 这对我使用IE7(正常模式)有效。 真是个令人毛骨悚然
当你在Chrome中下载一个文件时,你会在屏幕底部弹出一个带有下载文件名称的窗口。如何在文件下载后使用Selenium Webdriver和Python关闭它?