Cara mengatur proxy di Playwright (Autentikasi Browser & Per-Context)
Diperbarui:
Playwright mendukung autentikasi proxy HTTP bawaan (server, username, password) di Chromium, Firefox, dan WebKit tanpa memerlukan ekstensi peramban atau pustaka pihak ketiga. Yang lebih andal, fitur Per-Context Proxy di Playwright memungkinkan satu instance browser menjalankan puluhan sesi BrowserContext terisolasi, masing-masing terhubung ke IP statis VinaProxy miliknya sendiri.
proxy={ server: 'http://ip:port', username: 'user', password: 'pass' }- 1 IP₫40.000
- 5+ IP₫35.000
- 10+ IP₫25.000
- 20+ IP₫25.000
- 50+ IP₫25.000
- 100+ IP₫25.000
- 200+ IP₫25.000
- 500+ IP₫25.000
- 1000+ IP₫22.000
- 2000+ IP₫20.000
- 1 IP₫50.000
- 3+ IP₫40.000
- 5+ IP₫40.000
- 10+ IP₫32.000
- 50+ IP₫30.000
- 100+ IP₫30.000
- 200+ IP₫30.000
- 500+ IP₫25.000
Konfigurasi parameter objek proxy Playwright
Kirimkan objek konfigurasi proxy secara global di chromium.launch({ proxy }) atau per sesi di browser.newContext({ proxy }):
| Kunci Playwright | Format Nilai | Catatan Teknis |
|---|---|---|
server | 'http://ip:port' | Hanya host dan port, wajib diawali dengan http:// |
username | 'user' | Username proxy dari dashboard VinaProxy Anda |
password | 'pass' | Password proxy (Playwright menangani respons HTTP 407 secara native) |
bypass | 'localhost,127.0.0.1' | Daftar host opsional yang dipisahkan koma untuk melewati proxy |
Praktik terbaik menjalankan BrowserContext multi-IP secara efisien
- Di Windows dan macOS, berikan placeholder
proxy: { server: 'http://per-context' }dichromium.launch()jika Anda berencana mengganti proxy di setiapbrowser.newContext() - Atur
timezoneIddanlocaledibrowser.newContext()sesuai lokasi proxy agar header dan API JavaScriptIntlselaras dengan negara target - Batalkan permintaan gambar dan font yang tidak diperlukan dengan
page.route()untuk meningkatkan kecepatan scraping
Langkah demi langkah
- 1
Ambil ip, port, username, dan password
Salin kredensial
ip:port:user:passdari dashboard VinaProxy Anda. - 2
Masukkan objek proxy ke newContext()
Panggil
const context = await browser.newContext({ proxy: { server: 'http://ip:port', username: 'user', password: 'pass' } }). - 3
Selaraskan timezoneId dan locale
Tambahkan
timezoneIddanlocaleyang cocok dengan lokasi proxy (misalnyaAmerica/New_YorkatauAsia/Ho_Chi_Minh). - 4
Verifikasi IP keluar pada halaman baru
Buka tab
const page = await context.newPage()dan lakukan request kehttps://vinaproxy.com/api/my-ip.
Pertanyaan umum
Mengapa Playwright menampilkan error 'Proxy is only supported when browser is launched with a proxy'?
Di Windows dan macOS, Chromium membutuhkan flag proxy saat browser dibuka sebelum mengizinkan penggantian per konteks. Buka browser dengan chromium.launch({ proxy: { server: 'http://per-context' } }) lalu masukkan proxy sebenarnya pada setiap browser.newContext({ proxy }).
Apakah proxy VinaProxy berfungsi di Firefox dan WebKit pada Playwright?
Ya. Struktur objek proxy: { server, username, password } yang sama berfungsi di Chromium, Firefox, dan WebKit baik pada Node.js maupun Python.
Apakah kuota bandwidth dibatasi saat menjalankan browser headless Playwright?
Tidak. Semua paket IPv4 Dedicated dan ISP Statis VinaProxy mencakup kuota transfer bulanan tanpa batas.
Tingkatkan skala Playwright BrowserContext dengan IP statis dedicated
Proxy HTTP(S) instan tanpa batas kuota di 7 lokasi internasional.
Beli Proxy Playwright