Playwright Java przez CDP: ustawianie proxy w nowym kontekście przeglądarki
Połącz się z punktem końcowym CDP Chromium, a następnie utwórz kontekst z proxy; trzymaj osobno połączenie sterujące i trasę wyjściową zdalnej przeglądarki.
Zdalna przeglądarka ma dwie ścieżki sieciowe: połączenie sterujące Javy z usługą przeglądarki oraz żądania przeglądarki do witryn. Drugą skonfiguruj w tworzonym kontekście.
Dla usługi Chromium, która udostępnia punkt końcowy CDP i zezwala na nowe konteksty:
import com.microsoft.playwright.*;
import com.microsoft.playwright.options.Proxy;
try (Playwright playwright = Playwright.create()) {
Browser browser = playwright.chromium().connectOverCDP(cdpEndpoint);
try {
var options = new Browser.NewContextOptions().setProxy(
new Proxy("http://proxy.example:8080")
.setUsername(proxyUser)
.setPassword(proxyPassword));
try (BrowserContext context = browser.newContext(options)) {
context.newPage().navigate("https://www.example.org/");
}
} finally {
browser.close();
}
}
cdpEndpoint to bieżący punkt końcowy udostępniany przez usługę przeglądarki. Jego token uwierzytelniania i protokół są niezależne od konta proxy przekazującego.
Połączenia CDP działają tylko z Chromium. Punkt końcowy z protokołem Playwright używa zamiast tego connect; zmiana przyrostka URL bez sprawdzenia protokołu usługi nie jest niezawodną konwersją.
Proxy musi być osiągalne z hosta zdalnej przeglądarki. Nasłuch loopback na maszynie z Javą nie jest tam automatycznie dostępny. Ustawienie nowego kontekstu nie rekonfiguruje też istniejącego kontekstu domyślnego ani połączenia WebSocket Javy.