Я использую Selenium Webdriver (Chromedriver) в Java вместе с прокси-сервером BrowserMob для захвата HTTP-трафика в файле har. Недавно я столкнулся с проблемой, когда разделы веб-сайта не загружались, и я сузил ее до этой ошибки: «Не удалось загрузить ресурс ".
Похоже, что при использовании прокси-сервера драйвер Selenium не может получить доступ к сертификату SSL для ссылки https. Вот фрагмент кода, который я использую:
ProxyServer server = new ProxyServer(4040);
server.start();
Proxy proxy = server.seleniumProxy();
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.PROXY, proxy);
driver = new ChromeDriver(capabilities);
server.newHar("myHar");
Har har = server.getHar();
server.stop();
Я попытался добавить "capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);"
, и это решило указанную выше проблему, но только если я удалю "capabilities.setCapability(CapabilityType.PROXY, proxy);"
, и тогда я больше не смогу захватить har-файл.
Я попытался переключиться на драйвер firefox и настроить профиль firefox, но либо я делаю это неправильно, либо это не сработает для моих целей.
Я также попытался настроить сертификат cybervillainsCA, который поставляется с прокси-сервером BrowserMob в доверенных корневых центрах сертификации, но это тоже не решило проблему.
Кто-нибудь знает, как решить эту проблему, чтобы я мог собирать HTTP-трафик, а также успешно загружать упомянутый выше ресурс?