Мне нужно найти способ обойти запрос на аутентификацию прокси-сервера. . Мне уже удалось сделать это как в обычных окнах Chrome, так и в инкогнито с помощью Proxy SwitchyOmega. Однако это расширение недоступно, когда Chrome запускается из кода.

Вот мой фрагмент кода, выполняющий Chrome
private RemoteWebDriver initChromeDesktop() {
final ChromeOptions options = new ChromeOptions();
Proxy proxy = new Proxy();
proxy.setHttpProxy("proxy:port");
proxy.setSslProxy("proxy:port");
proxy.setProxyType(Proxy.ProxyType.MANUAL);
options.setCapability("proxy",proxy);
options.addArguments("--start-maximized");
options.addArguments("--remote-allow-origins=*");
options.addArguments("--disable-search-engine-choice-screen");
options.setAcceptInsecureCerts(true);
caps.setCapability(ChromeOptions.CAPABILITY, options);
if (platform.contains(WIN)) {
caps.setCapability(CapabilityType.PLATFORM_NAME, WINDOWS_PLATFORM_NAME);
}
options.merge(caps);
try {
switch (platform) {
case PLATFORM_LOCAL:
System.setProperty(WEBDRIVER_CHROME_DRIVER, ChromeDriverPathWin);
driver = new ChromeDriver(options);
break;
default:
driver = new RemoteWebDriver(new URL(gridURL), options);
driver.setFileDetector(new LocalFileDetector());
break;
}
} catch (MalformedURLException e) {
LOGGER.log(Level.SEVERE,ERROR_GRID_SERVER, e);
}
return driver;
}
Примечание. Я подверг цензуре proxy:port в setHttpProxy и setSslProxy.
Я также пытался включить имя пользователя и пароль в HTTP-прокси:< /p>
username:password@proxy:port
и URL-адрес (устарел и не работает даже при вставке вручную в строку поиска):
http://username:password@endpoint
Альтернативное решение — включение расширения для браузера
Я полагаю, решением также было бы включить расширение Proxy SwitchyOmega в окно тестирования. Я попробовал несколько аргументов вариантов, в том числе:
options.setExperimentalOption("excludeSwitches", new String[]{"enable-automation"});
options.setExperimentalOption("useAutomationExtension", false);
а также при попытке запуска Chrome без дисплея:
options.addArguments("--headless");
Подробнее здесь: https://stackoverflow.com/questions/788 ... er-in-java
Мобильная версия