- Хост
- gw.prokso.com
- Порт
- 823 HTTP · 824 SOCKS5 — новый IP на каждый запрос · 10000–20000 фиксированный IP (sticky-сессия), HTTP(S) и SOCKS5
- Логин и пароль
- в кабинете, на странице плана
Готовые строки в нужном формате генерирует кабинет: выберите страну, тип IP и протокол.
- Хост — gw.prokso.com, порты 823 (HTTP), 824 (SOCKS5), 10000–20000 (фиксированный IP, HTTP или SOCKS5)
- Логин и пароль — в кабинете на странице плана
- Проверяйте IP в ответе самого запроса через прокси: страница «Мой IP» в браузере ваш скрипт не проверяет
Пошаговая инструкция, как подключить прокси Prokso в Playwright. Займёт несколько минут.
Шаг 1. Возьмите данные прокси в кабинете
Откройте план и скопируйте хост gw.prokso.com, порт, логин и пароль. Порт 823 — HTTP, 824 — SOCKS5 (оба дают новый IP на каждый запрос); порты 10000–20000 — фиксированный IP до 120 минут, работают и как HTTP, и как SOCKS5 (каждый порт — отдельный адрес). Страну задают в логине: логин__cr.ua.

Шаг 2. Укажите прокси в опциях запуска
Playwright принимает прокси вместе с логином и паролем в опции proxy — отдельная авторизация не нужна. Работает для Chromium, Firefox и WebKit.
Шаг 3. Запустите пример
Код ниже откроет страницу и выведет IP-адрес прокси. В Python синтаксис такой же: chromium.launch(proxy={...}).
import { chromium } from "playwright";
const browser = await chromium.launch({
proxy: { server: "http://gw.prokso.com:823", username: "USERNAME", password: "PASSWORD" },
});
const page = await browser.newPage();
await page.goto("https://api.ipify.org");
console.log(await page.textContent("body"));
await browser.close();Сохраните код как check.mjs и запустите node check.mjs.
Шаг 4. Разные IP для разных контекстов
Прокси можно задать и для отдельного контекста: browser.newContext({ proxy }). Так в одном браузере работают несколько профилей с разными фиксированными портами.
Шаг 5. Проверьте IP в запущенном браузере
Пример из шага 3 открывает https://api.ipify.org в браузере Playwright и выводит IP, который видит сайт, — он должен отличаться от вашего. Для нескольких контекстов откройте этот адрес в каждом: на разных фиксированных портах IP будут разные. Обычный браузер на компьютере идёт без прокси и покажет ваш адрес.

Прокси на контекст: несколько IP в одном браузере
Контекст в Playwright — это изолированный профиль со своими cookie. Задав каждому контексту свой фиксированный порт, вы получаете несколько независимых сессий в одном браузере:
const browser = await chromium.launch();
for (const port of [10001, 10002]) {
// each context has its own cookies and its own sticky IP
const context = await browser.newContext({
proxy: { server: `http://gw.prokso.com:${port}`, username: "USERNAME", password: "PASSWORD" },
});
const page = await context.newPage();
await page.goto("https://prokso.com/ip");
console.log(port, await page.textContent("body"));
await context.close();
}
await browser.close();Это экономит память по сравнению с отдельным браузером на каждую сессию.
Как сократить расход трафика
Отменяйте загрузку тяжёлых ресурсов через route. Картинки, видео и шрифты дают большую часть объёма страницы и для сбора данных не нужны:
await page.route("**/*", (route) => {
// skip heavy resources: they are not needed for data collection
const skip = ["image", "media", "font"].includes(route.request().resourceType());
return skip ? route.abort() : route.continue();
});Если страница не открывается
- net::ERR_PROXY_CONNECTION_FAILED. Браузер не достучался до прокси: проверьте поле
server. - net::ERR_TUNNEL_CONNECTION_FAILED. Прокси ответил отказом: проверьте логин, пароль и остаток трафика.
- Тайм-аут навигации. Стандартные 30 секунд бывают малы для резидентских адресов. Увеличьте тайм-аут в
page.goto(). - SOCKS5 с паролем в Chromium. Не поддерживается. Используйте HTTP или доступ по IP.
Подробнее о кодах — на странице коды ошибок прокси.
Вопросы и ответы
Работает ли прокси одинаково в Chromium, Firefox и WebKit?
HTTP-прокси с логином и паролем работает во всех трёх. Различия касаются SOCKS5: с паролем он в Chromium не поддерживается.
Как задать прокси в тестах Playwright Test?
В файле конфигурации в разделе <code>use</code> укажите тот же объект <code>proxy</code> с полями <code>server</code>, <code>username</code> и <code>password</code>.
Можно ли часть адресов пустить мимо прокси?
Да, в объекте <code>proxy</code> есть поле <code>bypass</code> со списком доменов через запятую.