# Playwright Proxy: Kimlik Doğrulamalı Kurulum, Python ve Node | ProxyJam

Playwright'ta proxy tarayıcı başına ya da context başına nasıl ayarlanır, HTTP üzerinden kullanıcı adı ve parolayla, ve SOCKS5 neden IP beyaz listesi gerektirir. Test edilmiş kod.

- Canonical: https://proxyjam.com/tr/integrations/playwright/
- Updated: 2026-10-23
- Language: tr

Playwright'a tek bir statik ISP adresi verin: launch sırasında ya da tek bir tarayıcı context'i için. Örnekler yayımlanmadan önce Chromium, Firefox ve WebKit'te yerel bir proxy'ye karşı çalıştırıldı.


server, username ve password alanlarıyla proxy'yi chromium.launch'a verin ya da tek bir context ile sınırlamak için browser.new_context'e verin. HTTP üzerinden üç motor da bu alanlarla kimlik doğrular. SOCKS5 üzerinden hiçbiri kullanıcı adı ve parola kabul etmez: Playwright başlatmayı reddeder. IP'nizi proxy'nin beyaz listesine ekleyin ve yalnızca socks5:// sunucusunu verin.


## Playwright'ta proxy ayarlayın

1. **Host, port, kullanıcı adı ve parolayı kopyalayın** Paneldeki Proxylerim bölümünden ya da API'deki siparişten. Her adres kendi dört değeriyle gelir.
2. **Kapsamı seçin** `launch` sırasında verilirse tarayıcının tamamı proxy'yi kullanır. `new_context` üzerinde verilirse yalnızca o context kullanır; böylece tek bir betik birkaç context'i farklı adresler üzerinden çalıştırabilir.
3. **Proxy nesnesini verin** `{"server": "http://HOST:PORT", "username": "USERNAME", "password": "PASSWORD"}`. Kimlik bilgileri kendi alanlarına yazılır, hiçbir zaman server URL'sinin içine yazılmaz.
4. **SOCKS5'e mi geçiyorsunuz? Kimlik bilgilerini çıkarın** Playwright bir SOCKS5 proxy'ye oturum açamaz; bu yüzden siparişi SOCKS5'e geçirin, kod sekmelerindeki beyaz liste çağrısıyla makinenizin IP'sini kabul ettirin ve yeni portu kullanarak yalnızca `socks5://HOST:PORT` değerini bırakın. Beyaz liste ayarlıyken proxy yalnızca listedeki adresleri kabul eder ve o sipariş için kullanıcı adı ile parola çalışmaz; boş bir liste gönderdiğinizde beyaz liste kapanır ve parolayla giriş yeniden çalışır.
5. **Çıkış adresini doğrulayın** Asıl çalıştırmadan önce o tarayıcının ya da context'in bir sayfasında [What Is My IP](/tr/what-is-my-ip/) sayfasını bir kez açın.

## Playwright için test edilmiş kod

Python ve Node için Playwright 1.64 ile çalıştırıldı. HTTP örnekleri bir kullanıcı adı ve parola gönderir ve beyaz listesi ayarlanmamış bir sipariş gerektirir; SOCKS5 örneği beyaz listeye dayanır ve önce proxy'nin SOCKS5'e geçirilmesini gerektirir, bu da yeni bir port verir. Büyük harfle yazılmış değerleri siparişinizin değerleriyle değiştirin.

### Python

Tarayıcının tamamı için proxy, Python.

```
# 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()
```

### Node.js

Tarayıcının tamamı için proxy, Node.

```
// 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();
})();
```

### Context başına

Tek bir tarayıcı context'i için proxy.

```
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()
```

### SOCKS5

Beyaz listedeki bir IP ile SOCKS5.

```
# 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()
```

### Beyaz liste çağrısı

IP'nizi proxy'nin beyaz listesine ekleyin.

```
# 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"]}'
```


## Her Playwright tarayıcısı neyi kabul eder

|  | Parolalı HTTP | Parolalı SOCKS5 | Beyaz listeli SOCKS5 |
|---|---|---|---|
| Chromium | Çalışıyor | Başlatmada reddedildi | Çalışıyor |
| Firefox | Çalışıyor | Başlatmada reddedildi | Çalışıyor |
| WebKit | Çalışıyor | Başlatmada reddedildi | Çalışıyor |

2026-10-22 tarihinde macOS üzerinde Python için Playwright 1.64 ile test edildi: her motor, parola isteyen yerel bir proxy'ye ve beyaz listedeki bir istemciyi kabul eden bir proxy'ye karşı başlatıldı. "Başlatmada reddedildi", Playwright'ın başlatma sırasında bir hatayla durduğu anlamına gelir.


## Adres Playwright'ın modeline nasıl oturur

- **Bir context, bir adres:** Her tarayıcı context'i kendi siparişinden gelen kendi statik IP'sini taşıyabilir
- **HTTP girişi:** username ve password alanları; Chromium, Firefox ve WebKit tarafından kabul edilir
- **SOCKS5 girişi:** Yalnızca beyaz listedeki IPv4 adresiyle, API ya da MCP üzerinden ayarlanır
- **Kararlılık:** IP, ödediğiniz sürenin tamamı boyunca çalıştırmalar arasında aynı kalır

## Playwright proxy'lerinde neler ters gider

### server dizesinin içinde kimlik bilgileri

Playwright kullanıcı adını ve parolayı kendi alanlarından okur. Bunun yerine server URL'sine yazılırlarsa hiç gönderilmezler: testimizde ilk gezinme zaman aşımına uğrayana kadar takılı kaldı ve kimlik bilgilerine işaret eden hiçbir mesaj çıkmadı.

### SOCKS5 parolası

Her motor SOCKS5 kimlik doğrulamasını reddeder ve hata, herhangi bir sayfa açılmadan önce, başlatma sırasında gelir. Çözüm farklı bir kütüphane değildir: betiğinizin çalıştığı IP'yi beyaz listeye ekleyin ve kimlik bilgilerini çıkarın.

### new_page'in adresi değiştirmesini beklemek

Sayfalar context'lerinin proxy'sini paylaşır, context'ler de kendi proxy'leri verilmedikçe tarayıcınınkini paylaşır. İki adresi yan yana çalıştırmak için her biri kendi proxy'siyle iki context oluşturun.

### Çıkış kontrolünü atlamak

Porttaki bir yazım hatası ya da hâlâ HTTP'ye ayarlı bir proxy açıkça hata verir, ancak proxy nesnesi olmadan oluşturulmuş bir context sessizce doğrudan dışarı çıkar. Yapılandırdığınız her context için bir kez IP'yi geri döndüren bir sayfa yükleyin.


## Playwright'ta proxy'lerle ilgili sorular

### Playwright'ta kimlik doğrulamalı bir proxy nasıl ayarlanır?

server, username ve password içeren bir nesneyi launch'a ya da new_context'e verin. Bir HTTP proxy üzerinden Chromium, Firefox ve WebKit, proxy istediğinde bu kimlik bilgilerinin hepsini gönderir.

### Playwright'ta parolalı bir SOCKS5 proxy kullanabilir miyim?

Hayır. Playwright, üç motorda da, tarayıcının SOCKS5 proxy kimlik doğrulamasını desteklemediğini söyleyen bir hatayla başlatma sırasında durur. Betiğinizin çalıştığı IP'yi beyaz listeye ekleyin, ardından yalnızca socks5 sunucusunu verin; beyaz listemiz HTTP'de olduğu gibi SOCKS5 üzerinden de geçerlidir.

### Her sayfa için farklı bir proxy nasıl kullanılır?

Her tarayıcı context'ine kendi proxy'sini verin ve sayfayı o context'te açın. Bir context içindeki sayfalar her zaman onun proxy'sini paylaşır, bu yüzden sayfa başına proxy, sayfa başına bir context demektir.

### Kurulum Python'da ve Node'da aynı mı?

Aynı üç alanlı aynı nesne: Python onu bir sözlük olarak, Node bir nesne değişmezi olarak yazar. Bu sayfadaki iki örnek de Playwright 1.64 ile çalıştırıldı.

### Proxy'yi veri kazıma için kullanabilir miyim?

Kendi sayfalarınızı bölgeye göre test etmek, kalite kontrolleri, reklam doğrulama, fiyat ve pazar araştırması, SEO izleme ve marka koruma, kabul edilebilir kullanım politikamıza göre önceden inceleme olmadan çalışır. Verinin herkese açık olması tek başına onu toplamaya izin vermez, kişisel veriler belirtilmiş bir hukuki dayanak gerektirir ve adres CAPTCHA'ları, bot algılamayı, istek sınırlarını ya da yasakları aşmaz; politika bunu denemeyi yasaklar.


Context'ler ve statik adresler bire bir eşleşir: pazar başına ya da iş başına bir context, betik her çalıştığında hedefe değişmeyen bir IP'den ulaşır. Çalıştırdığınız context sayısı kadar adresi [ISP proxy'ler](/tr/isp-proxies/) sayfasından satın alın, planları [fiyatlarda](/tr/pricing/) karşılaştırın ve tarayıcı olmadan [Python requests](/tr/integrations/python-requests/) kılavuzuyla veri çekin.



## Kaynaklar

- [Playwright documentation, Network: HTTP proxy](https://playwright.dev/python/docs/network#http-proxy): launch sırasında ve context başına proxy seçeneği
- [Playwright API, BrowserType.launch](https://playwright.dev/python/docs/api/class-browsertype#browser-type-launch): server, bypass, username ve password alanları
- [RFC 1929, Username/Password Authentication for SOCKS V5](https://www.rfc-editor.org/rfc/rfc1929): tarayıcıların uygulamadığı SOCKS5 girişi




Playwright, Chromium, Firefox ve WebKit'i tek bir API üzerinden yönetir ve proxy, bir tarayıcının ya da bir context'in nasıl oluşturulduğunun bir parçasıdır. Bu, tek bir betikte birkaç adres çalıştırmayı kolaylaştırır ve tek katı sınırı da buradadır: parolalı SOCKS5.

## Python'da Playwright proxy

Python örneği, Chromium'u tarayıcının tamamı için proxy ile başlatır; context başına örnek ise bunu tek bir context ile sınırlar. Motoru değiştirmek, chromium yerine firefox ya da webkit yazmaktır; proxy nesnesi aynı kalır.

## Playwright proxy kimlik doğrulaması

Proxy HTTP konuştuğunda üç motor da proxy'nin 407 yanıtına proxy nesnesindeki kullanıcı adı ve parolayla karşılık verir. Bir SOCKS5 proxy hiçbirinden böyle bir yanıt almaz; SOCKS5 örneğinin kimlik bilgisi taşımamasının ve beyaz listeye dayanmasının nedeni budur.

## Sayfa başına Playwright proxy ve bypass

Bir proxy tek bir sayfaya bağlanamaz. Birim context'tir: her adres için bir context oluşturun ve o adresi paylaşması gereken sayfaları onun içinde açın. Playwright'ta context'ler ucuzdur, bu yüzden bir mağazayı üç ülkeden kontrol eden bir betik, her biri kendi siparişinden oluşturulmuş üç context tutar.

Proxy nesnesi ayrıca bir bypass alanı alır: doğrudan erişilmesi gereken host'ların virgülle ayrılmış bir listesi. Bunu kendi iç hizmetleriniz ya da yerel bir test sunucusu için kullanın; böylece yalnızca dış dünyaya giden trafik, parasını ödediğiniz adres üzerinden çıkar.

