无法使用Selenium Web驱动程序处理任何浏览器的登录弹出窗口

时间:2018-06-22 07:33:07

标签: selenium selenium-webdriver selenium-chromedriver

我试图找到一个要求身份验证弹出的URL,该弹出窗口既不是窗口弹出窗口,也不是浏览器弹出窗口。

代码 driver.get(“ myURL”)将挂起/暂停,除非使用用户名和密码手动输入此弹出窗口。 手动输入凭据后,自动化脚本将继续-driver.get(“ myURL”)的下一行。

到处都提到了AutoIT和其他警报方法。但是问题是,除非手动处理,否则代码永远不会到达driver.get(“ myURL”)的下一行。

相同的URL导航到本地计算机上的登录网页,我可以使用selenium webdriver处理该网页,而不会出现任何警告,因为没有警报弹出。ScreenShot但是在服务器计算机中打开了相同的URL-要求此弹出窗口输入用户名和密码。

2 个答案:

答案 0 :(得分:0)

您可以使用driver.get()中的URL通过身份验证。 为此,只需在实际URL之前的协议中以:分隔并以@结束的协议后面直接添加凭据。

例如,如果您的用户是“ user”,密码是“ password”:driver.get("https://user:password@yourpage.com");

答案 1 :(得分:0)

为此找到的解决方案,可以通过线程概念进行处理

Thread t = new Thread(new Runnable() {
            public void run() {
                System.out.println(Thread.currentThread().getName());
                driver.get(Thread.currentThread().getName());
            }
        }, url);
        t.start();
// Next line of code :AutoIT or Robot or Sikuli to handle security pop-up