Ganti bahasa
Bahasa Indonesia English Русский Deutsch Español Français Italiano Українська Tiếng Việt Türkçe हिन्दी 日本語 中文
Menu
Harga
Proxy
TIPE PROXY
BERDASARKAN LOKASI77 lokasi
Solusi
Sumber Daya

Cara memakai proxy dengan Playwright

Berikan Playwright satu alamat ISP statis, saat launch atau untuk satu browser context. Contoh-contohnya dijalankan di Chromium, Firefox, dan WebKit terhadap proxy lokal sebelum diterbitkan.

Singkatnya: Berikan proxy dengan server, username, dan password ke chromium.launch, atau ke browser.new_context untuk membatasinya pada satu context. Lewat HTTP, ketiga engine melakukan autentikasi dengan field tersebut. Lewat SOCKS5, tidak satu pun menerima nama pengguna dan kata sandi: Playwright menolak untuk launch. Masukkan IP Anda ke whitelist proxy dan berikan hanya server socks5://.

Playwright mengendalikan Chromium, Firefox, dan WebKit melalui satu API, dan proxy adalah bagian dari cara browser atau context dibuat. Hal ini memudahkan menjalankan beberapa alamat dalam satu skrip, dan di sini pula letak satu-satunya batas kerasnya: SOCKS5 dengan kata sandi.

Proxy Playwright di Python

Contoh Python me-launch Chromium dengan proxy untuk seluruh browser; contoh per context membatasinya pada satu context. Mengganti engine cukup dengan mengubah chromium menjadi firefox atau webkit; objek proxy tetap sama.

Autentikasi proxy Playwright

Ketiga engine menjawab 407 dari proxy dengan nama pengguna dan kata sandi dari objek proxy ketika proxy berbicara HTTP. Proxy SOCKS5 tidak mendapat jawaban seperti itu dari satu pun di antaranya, itulah sebabnya contoh SOCKS5 tidak membawa kredensial dan mengandalkan whitelist.

Proxy Playwright per halaman, dan bypass

Proxy tidak bisa dipasang pada satu halaman. Unitnya adalah context: buat satu context per alamat dan buka di dalamnya halaman-halaman yang harus berbagi alamat itu. Context di Playwright murah, jadi skrip yang mengecek satu toko online dari tiga negara memegang tiga context, masing-masing dibuat dari pesanannya sendiri.

Objek proxy juga menerima field bypass, yaitu daftar host yang dipisahkan koma yang harus dicapai secara langsung. Pakai field ini untuk layanan internal Anda sendiri atau server pengujian lokal, sehingga hanya trafik yang memang ditujukan ke dunia luar yang keluar melalui alamat yang Anda bayar.

Mengatur proxy di Playwright

  1. Salin host, port, nama pengguna, dan kata sandi

    Dari Proxy Saya di dasbor atau dari pesanan di API. Setiap alamat datang dengan empat nilainya sendiri.

  2. Pilih cakupannya

    Saat launch, seluruh browser memakai proxy. Pada new_context, hanya context itu yang memakainya, sehingga satu skrip bisa menjalankan beberapa context melalui alamat yang berbeda.

  3. Berikan objek proxy

    {"server": "http://HOST:PORT", "username": "USERNAME", "password": "PASSWORD"}. Kredensial masuk ke field masing-masing, tidak pernah ke dalam URL server.

  4. Beralih ke SOCKS5? Hapus kredensialnya

    Playwright tidak bisa login ke proxy SOCKS5, jadi alihkan pesanan ke SOCKS5, izinkan IP mesin Anda dengan panggilan whitelist di tab kode, dan sisakan hanya socks5://HOST:PORT, dengan port yang baru. Selama whitelist diatur, proxy hanya menerima alamat yang terdaftar dan nama pengguna serta kata sandi berhenti berfungsi untuk pesanan itu; mengirim daftar kosong mematikan whitelist dan login dengan kata sandi berfungsi lagi.

  5. Pastikan alamat keluarnya

    Buka Berapa IP Saya sekali di halaman browser atau context tersebut, sebelum run yang sebenarnya.

# pip install playwright && playwright install chromium
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(proxy={
        "server": "http://HOST:PORT",
        "username": "USERNAME",
        "password": "PASSWORD",
    })
    page = browser.new_page()
    page.goto("https://example.com/")
    print(page.title())
    browser.close()
// npm i playwright && npx playwright install chromium
const { chromium } = require('playwright');

(async () => {
  const browser = await chromium.launch({
    proxy: {
      server: 'http://HOST:PORT',
      username: 'USERNAME',
      password: 'PASSWORD',
    },
  });
  const page = await browser.newPage();
  await page.goto('https://example.com/');
  console.log(await page.title());
  await browser.close();
})();
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch()
    # The proxy belongs to this context only; another context can use
    # a different address, or none.
    context = browser.new_context(proxy={
        "server": "http://HOST:PORT",
        "username": "USERNAME",
        "password": "PASSWORD",
    })
    page = context.new_page()
    page.goto("https://example.com/")
    print(page.title())
    browser.close()
# Switch the proxy to SOCKS5 and put your machine's IP on its whitelist:
# Chromium cannot send a SOCKS5 username and password.
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(proxy={"server": "socks5://HOST:PORT"})
    page = browser.new_page()
    page.goto("https://example.com/")
    print(page.title())
    browser.close()
# Put the public IPv4 address your code runs from on the proxy's
# whitelist. Replaces the list; an empty list turns whitelisting off
# and the proxy falls back to username and password.
curl -X PUT "https://api.proxyjam.com/public/v1/orders/ORDER_ID/whitelist" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"whitelisted_ips": ["YOUR_IP"]}'

Kode teruji untuk Playwright

Dijalankan dengan Playwright 1.64 untuk Python dan untuk Node. Contoh HTTP mengirim nama pengguna dan kata sandi dan memerlukan pesanan tanpa whitelist; contoh SOCKS5 mengandalkan whitelist dan mengharuskan proxy dialihkan ke SOCKS5 terlebih dahulu, yang memberi port baru. Ganti nilai berhuruf kapital dengan nilai dari pesanan Anda.

Dokumentasi API lengkap

Apa yang diterima setiap browser Playwright

Diuji pada 2026-10-22 dengan Playwright 1.64 untuk Python di macOS: setiap engine di-launch terhadap proxy lokal yang meminta kata sandi, dan terhadap proxy yang menerima klien yang di-whitelist. "Ditolak saat launch" berarti Playwright berhenti saat launch dengan error.
HTTP dengan kata sandiSOCKS5 dengan kata sandiSOCKS5, di-whitelist
ChromiumBerhasilDitolak saat launchBerhasil
FirefoxBerhasilDitolak saat launchBerhasil
WebKitBerhasilDitolak saat launchBerhasil

Apa yang salah dengan proxy Playwright

Kredensial di string server

Playwright membaca nama pengguna dan kata sandi dari field masing-masing. Jika ditulis di URL server, keduanya sama sekali tidak dikirim: dalam pengujian kami, navigasi pertama menggantung sampai timeout, tanpa pesan yang menunjuk ke kredensial.

Kata sandi SOCKS5

Setiap engine menolak autentikasi SOCKS5, dan error-nya muncul saat launch, sebelum halaman apa pun terbuka. Solusinya bukan library lain: masukkan IP tempat skrip Anda berjalan ke whitelist dan hapus kredensialnya.

Mengira new_page akan mengganti alamat

Halaman berbagi proxy context-nya, dan context berbagi proxy browser kecuali diberi proxy sendiri. Untuk menjalankan dua alamat berdampingan, buat dua context, masing-masing dengan proxy-nya.

Melewatkan cek alamat keluar

Salah ketik di port atau proxy yang masih diatur ke HTTP gagal dengan jelas, tetapi context yang dibuat tanpa objek proxy keluar langsung tanpa tanda apa pun. Muat halaman echo IP sekali untuk setiap context yang Anda konfigurasi.

Bagaimana alamat ini cocok dengan model Playwright

Satu context, satu alamat
Setiap browser context bisa membawa IP statisnya sendiri dari pesanannya sendiri
Login HTTP
Field username dan password, diterima oleh Chromium, Firefox, dan WebKit
Login SOCKS5
Hanya dengan alamat IPv4 yang di-whitelist, diatur melalui API atau MCP
Stabilitas
IP tetap sama di setiap run selama seluruh periode yang Anda bayar

Langkah berikutnya dari Playwright

Pertanyaan tentang proxy di Playwright

Bagaimana cara mengatur proxy dengan autentikasi di Playwright?

Berikan objek berisi server, username, dan password, ke launch atau ke new_context. Lewat proxy HTTP, Chromium, Firefox, dan WebKit semuanya mengirim kredensial itu saat proxy memintanya.

Bisakah saya memakai proxy SOCKS5 dengan kata sandi di Playwright?

Tidak. Playwright berhenti saat launch dengan error yang menyatakan bahwa browser tidak mendukung autentikasi proxy SOCKS5, di ketiga engine. Masukkan IP tempat skrip Anda berjalan ke whitelist, lalu berikan hanya server socks5; whitelist kami berlaku lewat SOCKS5 maupun HTTP. SOCKS5

Bagaimana cara memakai proxy berbeda untuk setiap halaman?

Berikan setiap browser context proxy-nya sendiri dan buka halaman di context tersebut. Halaman di dalam satu context selalu berbagi proxy-nya, jadi proxy per halaman berarti satu context per halaman.

Apakah penyiapannya sama di Python dan di Node?

Objek yang sama dengan tiga field yang sama: Python menulisnya sebagai dictionary, Node sebagai object literal. Kedua contoh di halaman ini dijalankan dengan Playwright 1.64.

Bisakah saya memakai proxy ini untuk scraping?

Menguji halaman Anda sendiri per wilayah, pemeriksaan kualitas, verifikasi iklan, riset harga dan pasar, pemantauan SEO, dan perlindungan merek berjalan tanpa peninjauan sebelumnya menurut kebijakan penggunaan yang dapat diterima kami. Ketersediaan publik saja tidak memberi izin untuk mengumpulkan data, data pribadi memerlukan dasar hukum yang dinyatakan, dan alamat ini tidak melewati CAPTCHA, deteksi bot, batas laju, atau pemblokiran; kebijakan tersebut melarang mencobanya. Kebijakan Penggunaan yang Dapat Diterima

Context dan alamat statis berpasangan satu lawan satu: satu context per pasar atau per pekerjaan, masing-masing mencapai target dari IP yang tidak berubah setiap kali skrip berjalan. Beli alamat sebanyak context yang Anda jalankan di Proxy ISP, bandingkan paket di harga, dan ambil data tanpa browser melalui panduan Python requests.

Sumber