Прокси в Playwright
Прокси задаётся при запуске браузера или на контекст, а логин с паролем идут отдельными полями, не внутри адреса.
Запуск с прокси
В поле server идёт только схема, хост и порт. Учётки Playwright ждёт отдельно, в username и password: строка вида http://логин:пароль@хост здесь не сработает.
import { chromium } from "playwright";
const browser = await chromium.launch({
proxy: {
server: "http://gw.dataimpulse.com:823",
username: "LOGIN__cr.de",
password: "PASSWORD",
},
});
const page = await browser.newPage();
await page.goto("https://ipinfo.io/json");
console.log(await page.textContent("body"));
await browser.close();Разные страны в одном процессе
Тот же объект proxy принимает browser.newContext — значит, в одном запущенном браузере можно держать несколько контекстов с разными странами: страна живёт в поле username, припиской __cr к логину.
Контексты изолированы друг от друга по cookies и хранилищу, поэтому смешивания сессий не будет. Если нужен постоянный адрес на контекст — поставьте в server липкий порт из 10000–20000, свой на каждый.