Selenium-Java-Proxy-Fähigkeiten mit Proxy.extractFrom lesen
Lies die Proxy-Fähigkeit einer Java-WebDriver-Sitzung über Proxy.extractFrom, statt anzunehmen, der zurückgegebene Rohwert sei bereits eine Proxy-Instanz.
Eine zurückgegebene WebDriver-Fähigkeit sind serialisierte Daten. Ihr Proxy-Eintrag kann eine Map sein statt eines vorhandenen org.openqa.selenium.Proxy-Objekts.
Für eine ChromeDriver- oder RemoteWebDriver-Instanz bietet Selenium Java einen Konvertierungshelfer:
Proxy proxy = Proxy.extractFrom(driver.getCapabilities());
if (proxy != null) {
System.out.println(proxy.getProxyType());
System.out.println(proxy.getHttpProxy());
System.out.println(proxy.getSslProxy());
}
Der Helfer verarbeitet sowohl eine Map als auch eine Proxy-Instanz. Er gibt null zurück, wenn kein unterstützter Wert zu extrahieren ist. Ein direkter Cast von getCapability("proxy") setzt eine Darstellung voraus und kann bei der anderen fehlschlagen.
Behalte den Modus bei den Feldern, die du prüfst. Eine PAC- oder Systemkonfiguration muss nicht dieselben manuell gesetzten HTTP- und HTTPS-Endpunktzeichenketten enthalten.
Die Fähigkeit sind Konfigurationsdaten, keine Zustandsprüfung. Sie belegt nicht, dass ein Listener eine Verbindung angenommen hat, und meldet nicht jede PAC-Entscheidung pro Ziel. Ein fehlender manueller Eintrag belegt ebenfalls nicht für sich, dass der Browser keine systemabgeleitete Proxy-Route hat.