代理认证selenium java



我使用java, selenium。如何在chrome或firefox中使用登录名和密码验证代理?使用AutoIt或任何浏览器扩展的选项都不适合,对整个系统使用代理也不是一个选项,因为同时启动多个具有不同代理的浏览器。据我所知,selenium并没有提供相应的工具。

我有一个类似的情况,我管理它工作的唯一方法是使用这个扩展- https://www.crx4chrome.com/crx/1446/。

下面是一个代码示例。这不是JAVA,但应该能让你明白

if (proxy.Credentials != null)
{
proxyIpPort = $"{proxy.Address.Host}:{proxy.Address.Port}";
var creds = proxy.Credentials as NetworkCredential;
proxyLogin = creds?.UserName;
proxyPassword = creds?.Password;
options.AddExtension(Path.Combine(PathHelper.AssemblyDirectory, "Resources", "extension_2_0_0_0.crx"));
}
var driver = new ChromeDriver(service, options);
if (proxyLogin != null)
{
driver.WaitForElement(By.Id("login"), "Proxy login").SendKeys(proxyLogin);
driver.WaitForElement(By.Id("password"), "Proxy password").SendKeys(proxyPassword);
driver.WaitForElement(By.Id("save"), "Proxy save").Click();
driver.Close();
driver.SwitchTo().Window(driver.WindowHandles.First());
}

最新更新