Cara menyediakan proksi dalam Playwright (Autentikasi Browser & Per-Konteks)
Updated:
Playwright menyokong autentikasi proksi HTTP asli (server, username, password) secara sedia ada merentasi Chromium, Firefox, dan WebKit—tanpa memerlukan sambungan penyemak imbas atau pembungkus pihak ketiga. Lebih menarik lagi, ciri Per-Context Proxy Playwright membolehkan satu instans penyemak imbas menjalankan berpuluh-puluh sesi BrowserContext yang terasing, masing-masing terikat dengan IP statik VinaProxy tersendiri.
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 objek proksi Playwright
Hantar objek konfigurasi proxy sama ada secara global dalam chromium.launch({ proxy }) atau bagi setiap sesi dalam browser.newContext({ proxy }):
| Kunci Playwright | Format Nilai | Nota Teknikal |
|---|---|---|
server | 'http://ip:port' | Hos dan port sahaja, diawali dengan http:// |
username | 'user' | Nama pengguna proksi VinaProxy anda |
password | 'pass' | Kata laluan proksi VinaProxy anda (dikendalikan secara asli pada HTTP 407) |
bypass | 'localhost,127.0.0.1' | Hos pilihan dipisahkan dengan koma yang memintas proksi |
Menjalankan BrowserContexts pelbagai IP dengan cekap
- Pada Windows dan macOS, hantar pemegang tempat
proxy: { server: 'http://per-context' }di dalamchromium.launch()apabila anda berhasrat untuk menggantikanproxydi dalam panggilanbrowser.newContext()individu - Tetapkan
timezoneIddanlocaledalambrowser.newContext()bersama proksi anda supaya pengepala dan API JSIntlsepadan dengan negara proksi - Batalkan permintaan imej dan fon yang tidak diperlukan dengan
page.route()untuk mempercepat daya pemprosesan pengikisan
Langkah demi langkah
- 1
Dapatkan ip, port, username, dan password
Salin kelayakan
ip:port:user:passanda dari papan pemuka VinaProxy. - 2
Hantar objek proksi ke newContext()
Panggil
const context = await browser.newContext({ proxy: { server: 'http://ip:port', username: 'user', password: 'pass' } }). - 3
Selaraskan timezoneId dan locale
Sertakan
timezoneIddanlocaleyang sepadan dengan lokasi proksi anda (cth.,America/New_YorkatauAsia/Ho_Chi_Minh). - 4
Sahkan IP keluar pada halaman baharu
Buka
const page = await context.newPage()dan buat permintaan kehttps://vinaproxy.com/api/my-ip.
Soalan lazim
Mengapa Playwright mengeluarkan ralat 'Proxy is only supported when browser is launched with a proxy'?
Pada Windows dan macOS, Chromium memerlukan bendera proksi pelancaran global sebelum membenarkan penggantian bagi setiap konteks. Lancarkan penyemak imbas dengan chromium.launch({ proxy: { server: 'http://per-context' } }) dan kemudian hantar proksi sebenar ke setiap browser.newContext({ proxy }).
Adakah proksi VinaProxy berfungsi dengan Playwright Firefox dan WebKit juga?
Ya. Sintaks proxy: { server, username, password } yang sama berfungsi merentasi Chromium, Firefox, dan WebKit dalam kedua-dua Node.js dan Python.
Adakah lebar jalur dikira semasa menjalankan penyemak imbas Playwright headless?
Tidak. Semua pelan IPv4 Dikhaskan dan ISP Statik VinaProxy merangkumi trafik bulanan tanpa had.
Skalakan BrowserContexts Playwright dengan IP statik khusus
Proksi HTTP(S) tanpa had segera merentasi 7 lokasi global.
Beli Proksi Playwright