无法使用任何浏览器的selenium web-driver处理登录弹出窗口

问题描述 投票:-1回答:2

我试图点击一个URL,要求提供身份验证弹出窗口,这既不是窗口弹出窗口,也不是浏览器弹出窗口。

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

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

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

selenium selenium-webdriver selenium-chromedriver
2个回答
0
投票

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

例如,如果您的用户是“用户”而您的密码是“密码”:driver.get("https://user:[email protected]");


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
© www.soinside.com 2019 - 2024. All rights reserved.