Як налаштувати проксі у Playwright (Browser та Per-Context Auth)
Updated:
Playwright підтримує нативну автентифікацію HTTP-проксі (server, username, password) «з коробки» у Chromium, Firefox та WebKit — без сторонніх розширень чи обгорток. Ба більше, функція Per-Context Proxy у Playwright дає змогу в одному екземплярі браузера запускати десятки ізольованих сесій BrowserContext, кожна з яких прив’язана до власної статичної IP від VinaProxy.
proxy={ server: 'http://ip:port', username: 'user', password: 'pass' }- 1 IP40 000 VND
- 5+ IP35 000 VND
- 10+ IP25 000 VND
- 20+ IP25 000 VND
- 50+ IP25 000 VND
- 100+ IP25 000 VND
- 200+ IP25 000 VND
- 500+ IP25 000 VND
- 1000+ IP22 000 VND
- 2000+ IP20 000 VND
- 1 IP50 000 VND
- 3+ IP40 000 VND
- 5+ IP40 000 VND
- 10+ IP32 000 VND
- 50+ IP30 000 VND
- 100+ IP30 000 VND
- 200+ IP30 000 VND
- 500+ IP25 000 VND
Конфігурація об’єкта проксі у Playwright
Передавайте об’єкт конфігурації proxy глобально через chromium.launch({ proxy }) або окремо для кожної сесії через browser.newContext({ proxy }):
| Ключ Playwright | Формат значення | Технічна примітка |
|---|---|---|
server | 'http://ip:port' | Лише хост і порт із префіксом http:// |
username | 'user' | Ваше ім'я користувача проксі VinaProxy |
password | 'pass' | Ваш пароль проксі VinaProxy (обробляється нативно при HTTP 407) |
bypass | 'localhost,127.0.0.1' | Необов'язковий список хостів через кому для обходу проксі |
Ефективний запуск BrowserContext з кількома IP
- У Windows та macOS передавайте плейсхолдер
proxy: { server: 'http://per-context' }уchromium.launch(), якщо плануєте перевизначатиproxyу викликахbrowser.newContext() - Вказуйте
timezoneIdтаlocaleуbrowser.newContext()разом із проксі, щоб заголовки та JS APIIntlвідповідали країні проксі - Скасовуйте непотрібні запити на зображення та шрифти через
page.route(), щоб прискорити скрапінг
Покроково
- 1
Отримайте ip, port, username та password
Скопіюйте облікові дані
ip:port:user:passз панелі керування VinaProxy. - 2
Передайте об’єкт проксі у newContext()
Викличте
const context = await browser.newContext({ proxy: { server: 'http://ip:port', username: 'user', password: 'pass' } }). - 3
Узгодьте timezoneId та locale
Вкажіть
timezoneIdтаlocale, що відповідають локації вашого проксі (наприклад,America/New_YorkабоAsia/Ho_Chi_Minh). - 4
Перевірте вихідну IP-адресу на новій сторінці
Відкрийте
const page = await context.newPage()і надішліть запит доhttps://vinaproxy.com/api/my-ip.
Часті запитання
Чому Playwright видає помилку 'Proxy is only supported when browser is launched with a proxy'?
У Windows та macOS Chromium вимагає глобального прапорця проксі під час запуску для подальшого перевизначення в окремих контекстах. Запустіть браузер із chromium.launch({ proxy: { server: 'http://per-context' } }), а потім передавайте потрібний проксі у кожен browser.newContext({ proxy }).
Чи працюють проксі VinaProxy у Playwright з Firefox та WebKit?
Так. Точно такий самий синтаксис proxy: { server, username, password } працює в Chromium, Firefox та WebKit як у Node.js, так і в Python.
Чи враховується трафік під час роботи headless-браузерів Playwright?
Ні. Усі тарифи VinaProxy Dedicated IPv4 та Static ISP мають безлімітний щомісячний трафік.
Масштабуйте BrowserContexts у Playwright зі статичними виділеними IP
Миттєві безлімітні HTTP(S)-проксі у 7 локаціях по всьому світу.
Купити проксі для Playwright