0

我正在尝试使用 Selenium 打开一个 Intranet 网站,该网站重定向到另一个登录链接,并在有效登录时返回原始 URL。例如 - 当我启动 webdriver 并导航到原始站点 URLhttps://DemoOriginalWebsite.Com时,浏览器被重定向到https://Validateyourselfbeforeaccessing.com:9030并显示在弹出窗口下方以输入用户 ID 和密码。

弹出窗口

我尝试如下传递凭据,但没有成功。

尝试 1: http://username:pswd@DemoOriginalWebsite.Com

尝试 2: https://username:pswdValidateyourselfbeforeaccessing.com:9030

无法直接访问身份验证 URL。

我的实际代码:

IWebDriver chromeDriver;
ChromeOptions options = new ChromeOptions();
options.AddArgument("disable-infobars");
options.AddUserProfilePreference("credentials_enable_service", false);        
options.AddUserProfilePreference("profile.password_manager_enabled", false);
chromeDriver = new ChromeDriver(options);
chromeDriver.Manage().Window.Maximize();     chromeDriver.Navigate().GoToUrl(@"http://username:pswd@DemoOriginalWebsite.Com");

请有任何建议。

4

2 回答 2

1

您将不得不使用 AutoIT。安装 AutoIT,在 AutoIT 中编写脚本并将其导出为 .exe 文件。这个 .exe 你必须在你的 selenium 中调用

WinWait("Untitled - Google Chrome", "" , 10)) //This will wait for 10 seconds for window with the specified title
WinActivate("Untitled - Google Chrome"); // This will send the focus of the cursor to the window with the specified title
Send("username");

//1st argument : moves the cursor's focus from Username textbox to Password text box.  
//2nd argument : false,  over here tell that it is not a text but raw key
Send("{TAB}", false); 
Send("password");
Send("{Enter}", false);// this will mimic the action of pressing enter button.
于 2017-05-24T17:47:31.683 回答
1

这就是我的想法。

1 - 将 AutoIt NuGet 包添加到项目中。

2 - 使用如下:

IWebDriver driverIE = new InternetExplorerDriver();
driverIE.Manage().Window.Maximize();
driverIE.Navigate().GoToUrl(@"https://DemoOriginalWebsite.Com");
AutoItX.ControlFocus("Windows Security", "", "Edit1");
AutoItX.ControlSetText("Windows Security", "", "Edit1","userid");
AutoItX.ControlFocus("Windows Security", "", "Edit2");
AutoItX.ControlSetText("Windows Security", "", "Edit2", "password");
AutoItX.ControlClick("Windows Security", "", "Button2");
//Do your work.
driverIE.Dispose();

我遵循的教程。 教程 1教程 2

于 2017-05-25T07:42:15.343 回答