# Python 및 Node.js에서 Playwright 정적 프록시 설정

> Python 및 Node.js에서 Playwright 정적 프록시 설정: 서버, 사용자 이름 및 비밀번호, IP당 하나의 브라우저 컨텍스트, 출구 IP 확인. 30일 IP, KYC 없이, 암호화폐.

- URL: https://steadyproxy.com/ko/guides/playwright-static-proxy/
- 최종 업데이트: 2026-10-19
- Publisher: SteadyProxy (https://steadyproxy.com)

정적 IP의 서버, 사용자 이름 및 비밀번호를 브라우저 또는 각 컨텍스트에 전달한 다음 실제 작업 전에 출구 IP를 확인하세요.

**빠른 답변 — Playwright에서 정적 프록시를 어떻게 설정하나요?**

Playwright 정적 프록시의 경우 server, username 및 password가 포함된 프록시를 chromium.launch()에 전달하거나, 각 브라우저 컨텍스트에 자체 프록시를 제공하여 하나의 브라우저에서 여러 정적 IP를 실행하세요. 그런 다음 api.ipify.org를 열어 출구 IP를 확인하세요. **SteadyProxy** 정적 IP는 2026년 10월 기준 IP당 US$2.24부터 30일 동안 임대되며, KYC 없이 암호화폐 결제가 가능합니다.

## 핵심 정보는 무엇인가요?

| 속성 | 값 |
| --- | --- |
| 실행 옵션 | proxy = server, username, password (HTTP 프록시 로그인) |
| 문맥에 따라 | browser.newContext({ proxy })는 각 컨텍스트에 자체 고정 IP를 부여합니다 |
| SOCKS5 | Playwright에서 지원되며, 문서에는 HTTP(S) 프록시용 사용자 이름과 비밀번호가 설명되어 있으므로 SOCKS5는 IP 허용 목록과 함께 사용하세요 |
| SteadyProxy 인증 | 사용자 이름과 비밀번호, 또는 IP 허용 목록(최대 10개 IP) |
| 확인 | 출구 IP 확인은 api.ipify.org, 네트워크 정보는 ipinfo.io/json |
| 코드 검사 | 2026년 10월 19일(Playwright 1.60) 기준 Python은 py_compile을, Node.js는 node --check를 통과했습니다 |

## Playwright for Python에서 고정 프록시를 설정하려면 어떻게 하나요?

브라우저 전체가 하나의 고정 IP를 사용해야 할 때는 실행 시 프록시를 지정하세요. server에는 IP의 HTTP 주소인 http://host:port를 넣고, 사용자 이름과 비밀번호는 URL이 아닌 별도 필드에 넣습니다. Playwright가 프록시의 로그인 요청에 대신 응답하므로 로그인 창은 뜨지 않습니다. 예제는 api.ipify.org를 연 다음 ipinfo.io/json을 열고 둘 다 출력합니다.

*playwright_sync.py: 브라우저 전체에 하나의 고정 IP*

```python
"""Playwright (Python) through one static proxy.

Install: python -m pip install playwright && python -m playwright install chromium
"""
import os

from playwright.sync_api import sync_playwright

PROXY = {
    "server": "http://" + os.environ.get("PROXY_HOST", "gw.steadyproxy.com") + ":"
    + os.environ.get("PROXY_PORT", "7777"),
    "username": os.environ.get("PROXY_USER", "USERNAME"),
    "password": os.environ.get("PROXY_PASS", "PASSWORD"),
}

with sync_playwright() as p:
    browser = p.chromium.launch(proxy=PROXY)
    context = browser.new_context()
    page = context.new_page()
    page.goto("https://api.ipify.org?format=json", timeout=30000)
    print("Exit IP:", page.inner_text("body"))
    page.goto("https://ipinfo.io/json", timeout=30000)
    print("Network:", page.inner_text("body"))
    browser.close()

```

## 하나의 Playwright 브라우저에서 여러 고정 IP를 사용하려면 어떻게 하나요?

IP마다 브라우저 컨텍스트를 하나씩 만드세요. Playwright 문서에 따르면 프록시는 브라우저 전체 또는 각 브라우저 컨텍스트별로 설정할 수 있습니다. 컨텍스트는 쿠키나 스토리지를 공유하지 않으므로 각각이 자체 IP를 쓰는 별도 프로필처럼 동작합니다. Node.js 예제는 두 IP를 순회하며 각 컨텍스트에서 api.ipify.org를 열고 사용 후 컨텍스트를 닫습니다. 목록에는 대시보드에서 가져온 각 IP의 호스트, 포트, 사용자 이름, 비밀번호를 채우세요.

*playwright_contexts.mjs: 고정 IP마다 컨텍스트 하나 (Node.js)*

```javascript
// Playwright (Node.js): one browser, one context per static IP.
// Install: npm i playwright && npx playwright install chromium
import { chromium } from 'playwright';

// Copy host, port, username and password of each IP from your dashboard.
const staticIps = [
  { name: 'client-a', host: 'gw.steadyproxy.com', port: '7777', username: 'USERNAME', password: 'PASSWORD' },
  { name: 'client-b', host: 'gw.steadyproxy.com', port: '7777', username: 'USERNAME', password: 'PASSWORD' },
];

const browser = await chromium.launch();
try {
  for (const ip of staticIps) {
    const context = await browser.newContext({
      proxy: { server: `http://${ip.host}:${ip.port}`, username: ip.username, password: ip.password },
    });
    const page = await context.newPage();
    await page.goto('https://api.ipify.org?format=json', { timeout: 30000 });
    console.log(ip.name, await page.innerText('body'));
    await context.close();
  }
} finally {
  await browser.close();
}

```

## Playwright에서 HTTP와 SOCKS5 중 무엇을 써야 하나요?

대부분의 경우 사용자 이름과 비밀번호를 쓰는 HTTP 포트를 사용하세요. 이는 Playwright 문서에서 프록시 로그인용으로 설명하는 조합이며, HTTPS 페이지는 CONNECT 터널을 통해 전송됩니다. 로그인이 필요 없도록 머신이 IP 허용 목록에 있을 때만 socks5:// 서버와 함께 SOCKS5를 사용하세요. 하나의 고정 IP에서 두 포트 모두 같은 출구 IP를 제공합니다. SteadyProxy는 HTTP, HTTPS (CONNECT) 및 SOCKS5을 지원합니다.

## 실행 사이에 같은 고정 IP에서 로그인 상태를 유지하려면 어떻게 하나요?

로그인 후 컨텍스트의 storage state를 저장하고, 다음에 같은 프록시로 불러오세요. Python에서는 context.storage_state(path='client-a.json')가 쿠키와 로컬 스토리지를 기록하고, browser.new_context(storage_state='client-a.json', proxy=...)가 이를 복원합니다. IP별, 계정별로 상태 파일 하나씩 유지하고, 한 계정의 상태를 다른 계정의 IP에 절대 불러오지 마세요. 이 파일들은 비밀로 취급하세요.

## 가장 흔히 발생하는 문제는 무엇인가요?

대부분의 경우는 네 가지 오류로 정리됩니다. ERR_PROXY_CONNECTION_FAILED는 호스트나 포트가 잘못되었거나 내 쪽에서 차단되었음을 의미합니다. 407 응답은 로그인 정보가 잘못되었거나 허용 목록에 소스 IP가 빠졌음을 의미합니다. ERR_TUNNEL_CONNECTION_FAILED는 프록시가 대상을 거부했음을 의미하며, 차단 목록을 확인하세요: 뱅킹, 정부, 결제 포털 및 티켓팅 사이트, 그리고 SMTP(이메일 발송) 포트 25, 465, 587. 모든 페이지에서 타임아웃이 발생하면 IP의 결함을 가리키므로 curl로 테스트한 뒤 지원팀에 문의하세요.

## Playwright와 고정 프록시에 대해 사람들이 또 무엇을 묻나요?

### 사용자 이름과 비밀번호를 server URL에 넣어도 되나요?

대신 별도의 사용자 이름과 비밀번호 필드를 사용하세요. 이는 Playwright에서 HTTP 프록시에 로그인하는 문서화된 방법이며 특수 문자의 URL 인코딩 문제를 피할 수 있습니다. 그러면 server 필드에는 고정 IP의 스킴, 호스트, 포트만 들어갑니다.

### Playwright의 각 페이지가 자체 IP를 받나요?

아니요. 페이지는 해당 컨텍스트의 프록시를 상속하며, 컨텍스트는 자체 프록시를 설정하지 않는 한 브라우저의 프록시를 상속합니다. 하나의 컨텍스트에 있는 모든 페이지는 하나의 고정 IP를 공유합니다. 여러 IP를 쓰려면 Node.js 예제처럼 여러 컨텍스트를 만들거나 여러 브라우저를 사용하세요.

### Playwright에서 Firefox나 WebKit과 함께 고정 프록시를 사용할 수 있나요?

예. proxy 옵션은 chromium, firefox, webkit 실행에서 같은 형태입니다. 엔진마다 일부 프록시 오류를 처리하는 방식이 다르므로 각 엔진을 api.ipify.org로 테스트하세요. 엔진 전반의 QA에서는 결과의 비교 가능성을 유지하도록 모든 엔진에 같은 고정 IP를 사용하세요.

### IP에 맞게 locale과 timezone을 설정해야 하나요?

로컬 QA와 지오로케이션 테스트에서는 예입니다: browser.new_context(locale='de-DE', timezone_id='Europe/Berlin')를 사용하면 사이트가 현지 방문자에게 보이는 것처럼 렌더링됩니다. 이는 테스트 브라우저가 요청하는 내용을 바꿀 뿐이며, IP는 여전히 사이트가 감지하는 국가를 결정합니다. 테스트 계획은 [지오로케이션 QA](https://steadyproxy.com/ko/use-cases/geolocation-qa/)를 참고하세요.

### 모든 컨텍스트가 올바른 IP를 사용하는지 어떻게 확인하나요?

새 컨텍스트마다 먼저 api.ipify.org를 열고 응답을 대시보드의 IP 목록과 비교하세요. 일치하지 않으면 실행을 실패시키세요. 비용은 컨텍스트당 가벼운 요청 하나이며, 전체 실행이 잘못된 IP로 나가는 것을 막아줍니다.

### 10개의 고정 IP에서 10개의 Playwright 컨텍스트를 실행하는 데 비용이 얼마나 드나요?

2026년 10월 기준으로 ISP IP 10개는 US$20.86, 전용 데이터센터 IP 10개는 US$12.69이며 각각 30일 기준입니다. 과금은 GB가 아닌 IP당입니다. 결제는 암호화폐로 하며 KYC가 없습니다. 모든 플랜 규모는 [가격](https://steadyproxy.com/ko/pricing/)를 참고하세요.

## 이 가이드는 어떤 출처를 사용하나요?

1. [네트워크: HTTP 프록시 (Python)](https://playwright.dev/python/docs/network#http-proxy) — Playwright (2026-10-19)
2. [네트워크: HTTP 프록시 (Node.js)](https://playwright.dev/docs/network#http-proxy) — Playwright (2026-10-19)
3. [ipify API](https://www.ipify.org/) — ipify (2026-10-19)

---

SteadyProxy: SteadyProxy는 정적 프록시 제공업체입니다: ISP(정적 레지덴셜) 및 전용 데이터센터 IP를 IP당 30일 단위로 임대하며, 신분증 업로드 없이 암호화폐로 결제합니다.
