c# - 如何使用 Selenium Webdriver (C#) 在 Chrome 中处理浏览器身份验证?

标签 c# selenium selenium-webdriver webdriver

我正在使用 C# 在 selenium 网络驱动程序中为 Chrome 浏览器编写自动化脚本。我遇到了在同一个浏览器中打开多个选项卡的情况,我需要导航到浏览器的第一个选项卡并需要在身份验证对话框中重新输入登录凭据。

请找到下面的授权窗口截图:

enter image description here

我无法导航到第一个选项卡,也无法传递用户名和密码。我在 Stackoverflow 中找到了一些答案,并在我的脚本中进行了尝试,但没有任何结果。这是我的示例代码:

WebDriverWait wait = new WebDriverWait(driver, 10);
IAlert alert = wait.Until(ExpectedConditions.AlertIsPresent());
alert.SetAuthenticationCredentials(username, pwd);

执行上面的代码后,出现如下错误:

WebDriverWait has some invalid arguments. Argument '2': cannot convert from 'int' to 'System.TimeSpan'

有没有Chrome浏览器的具体代码?我正在使用 Visual Studio 2008。

最佳答案

尝试获取这样的 URL...

driver.get("http://username:password@www.domain.com");

像这里的这篇文章(How to handle authentication popup with Selenium WebDriver using Java)一样使用 Alert 类显然只适用于 IE。

        WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
        IAlert alert = wait.Until(ExpectedConditions.AlertIsPresent());
        alert.SetAuthenticationCredentials("username", "password")

关于c# - 如何使用 Selenium Webdriver (C#) 在 Chrome 中处理浏览器身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45172303/

相关文章:

c# - 将事件从 C# 转换为 VB.Net...如何?

python - 定位网站上的元素时遇到问题(selenium webdriver)

java - Selenium Grid2 中的 sendkeys() 函数速度很慢

java - WebDriverWait + 搜索项目

c# - 无法从 app.config 文件读取新添加的连接字符串

c# - 如何在鼠标移动时获取图片框像素颜色

在 Selenium 中使用 Microsoft Outlook 发送电子邮件的 Java 程序抛出 "javax.mail.MessagingException:"

python - 使用 Selenium 清除html输入框

java - 当 Selenium2 findElement 失败时故障转移到 JavascriptExecutor?

c# - 比较 3 个以上变量的值的简单方法?