Интеграции

Автоматизация браузера

Playwright, Puppeteer и Selenium управляют настоящим браузером, а настоящий браузер не умеет передавать пароль SOCKS5-прокси. Используйте HTTP-порт с логином и паролем или белый список IP.

Обновлено 16 октября 2026

Playwright#

import { chromium } from "playwright";

const browser = await chromium.launch({
  proxy: {
    server: "http://HOST:PORT",
    username: "USER",
    password: "PASS",
  },
});
const page = await browser.newPage();
await page.goto("https://api.ipify.org");
console.log(await page.textContent("body"));
await browser.close();

Свой прокси на каждый контекст#

Один браузер может держать много изолированных контекстов, у каждого свой прокси, куки и хранилище. Это дешевле, чем отдельный браузер на каждую личность.

JavaScript
// One browser, a different proxy for every context
const browser = await chromium.launch();

const a = await browser.newContext({
  proxy: { server: "http://HOST_A:PORT_A", username: "USER", password: "PASS" },
});
const b = await browser.newContext({
  proxy: { server: "http://HOST_B:PORT_B", username: "USER", password: "PASS" },
});

Puppeteer#

Chrome получает адрес прокси флагом запуска, а доступы через page.authenticate.

JavaScript
import puppeteer from "puppeteer";

const browser = await puppeteer.launch({
  args: ["--proxy-server=http://HOST:PORT"],
});
const page = await browser.newPage();
await page.authenticate({ username: "USER", password: "PASS" });
await page.goto("https://api.ipify.org");
console.log(await page.evaluate(() => document.body.innerText));
await browser.close();

Selenium#

Обычный Selenium не умеет передать Chrome пароль прокси. Есть два чистых обходных пути.

SeleniumBase

SeleniumBase сам справляется с авторизацией прокси:

Python
# pip install seleniumbase
from seleniumbase import SB

with SB(proxy="USER:PASS@HOST:PORT") as sb:
    sb.open("https://api.ipify.org")
    print(sb.get_text("body"))

Белый список IP

На заказах ISP и датацентра добавьте адрес сервера в белый список IP и отдайте Chrome прокси без доступов:

Python
# Works when your server's IP is in the order's whitelist:
# Chrome cannot take a username and password in --proxy-server.
from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument("--proxy-server=http://HOST:PORT")

driver = webdriver.Chrome(options=options)
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()

С резидентскими прокси#

  • Используйте фиксированную строку на браузер или контекст, чтобы страница, её скрипты и запросы к API выходили с одного адреса.
  • Отключайте ненужные картинки, медиа и шрифты: оплачивается каждый байт, который скачивает браузер. См. трафик.
  • Выключите обновления браузера и загрузку компонентов в автоматизированных профилях.

Не нашли ответ?

Поддержка отвечает в чате на сайте круглосуточно. Быстрее всего обычно отвечают в Телеграм, а на тикет ответ придёт на почту.