Playwright Java през CDP: задаване на прокси в нов контекст на браузъра
Свържете се с CDP крайна точка на Chromium, след което създайте контекст с настроено прокси; дръжте контролната връзка и изходящия маршрут на отдалечения браузър отделени.
Отдалеченият браузър има два мрежови пътя: контролната връзка на Java към услугата на браузъра и заявките на браузъра към уебсайтове. Настройте втория в контекста, който създавате.
За услуга на Chromium, която предоставя CDP крайна точка и позволява нови контексти:
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 е текущата крайна точка, която услугата на браузъра предоставя. Нейният токен за удостоверяване и протокол са независими от акаунта за преден прокси.
CDP връзките са само за Chromium. Крайна точка с протокол Playwright използва вместо това connect; смяната на наставка в URL без проверка на протокола на услугата не е надеждно преобразуване.
Проксито трябва да е достъпно от хоста на отдалечения браузър. Слушател на loopback на машината с Java не е автоматично достъпен там. Настройката на новия контекст също не преконфигурира вече съществуващ контекст по подразбиране или WebSocket връзката на Java.