ไม่ต้อง KYC — ไม่ต้องใช้บัตรประชาชน ไม่ต้องเซลฟี่ ไม่ต้องใช้เอกสาร · จ่ายด้วยคริปโต: BTC, USDT, USDC, ETH, SOL, LTC · เติมเงินเริ่มต้นที่ US$25
ภาษา: ไทย
ดูราคา

Guide · Playwright

การตั้งค่า Playwright static proxy ใน Python และ Node.js

ส่ง server, username และ password ของ static IP ไปยังเบราว์เซอร์หรือไปยังแต่ละ context จากนั้นตรวจสอบ exit IP ก่อนทำงานจริง

อัปเดตล่าสุด: · 3 นาทีในการอ่าน

คำตอบสั้น

ฉันจะตั้งค่า static proxy ใน Playwright ได้อย่างไร?

สำหรับ Playwright static proxy ให้ส่ง proxy พร้อม server, username และ password ไปยัง chromium.launch() หรือให้แต่ละ browser context มี proxy ของตัวเองเพื่อรัน static IP หลายตัวในเบราว์เซอร์เดียว จากนั้นเปิด api.ipify.org เพื่อตรวจสอบ exit IP SteadyProxy static IP เช่าสำหรับ 30 วัน เริ่มที่ US$2.24 ต่อ IP ณ เดือนตุลาคม 2026 ไม่ต้อง KYC และจ่ายด้วยคริปโต

ข้อเท็จจริงสำคัญมีอะไรบ้าง?

ตัวเลือก Launchproxy = server, username, password (HTTP proxy login)
ตามบริบทbrowser.newContext({ proxy }) ทำให้แต่ละ context มี IP แบบสแตติกของตัวเอง
SOCKS5รองรับโดย Playwright;เอกสารอธิบาย username และ password สำหรับพร็อกซี HTTP(S) ดังนั้นให้ใช้ SOCKS5 คู่กับ IP allowlist
การยืนยันตัวตนด้วย SteadyProxyชื่อผู้ใช้และรหัสผ่าน หรือรายชื่อ IP ที่อนุญาต (สูงสุด 10 IP)
ตรวจสอบapi.ipify.org สำหรับ exit IP, ipinfo.io/json สำหรับเครือข่าย
ตรวจสอบโค้ดPython ผ่าน py_compile และ Node.js ผ่าน node --check เมื่อวันที่ 19 ตุลาคม 2026 (Playwright 1.60)

จะตั้งพร็อกซีแบบสแตติกใน Playwright สำหรับ Python ได้อย่างไร?

ระบุพร็อกซีตอน launch เมื่อต้องการให้เบราว์เซอร์ทั้งหมดใช้ IP แบบสแตติกเดียว server คือที่อยู่ HTTP ของ IP คุณ รูปแบบ http://host:port;username และ password ใส่ในช่องของตัวเอง ไม่ใช่ใน URL Playwright จะตอบคำขอ login ของพร็อกซีให้เอง จึงไม่มีกล่องลงชื่อเข้าใช้ปรากฏขึ้น ตัวอย่างจะเปิด api.ipify.org แล้วตามด้วย ipinfo.io/json และพิมพ์ทั้งสองค่า

playwright_sync.py: IP แบบสแตติกหนึ่งตัวสำหรับเบราว์เซอร์ทั้งหมด
"""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()

จะรัน IP แบบสแตติกหลายตัวใน Playwright เบราว์เซอร์เดียวได้อย่างไร?

สร้าง browser context หนึ่งอันต่อหนึ่ง IP เอกสารของ Playwright ระบุว่าสามารถตั้งพร็อกซีสำหรับเบราว์เซอร์ทั้งหมดหรือสำหรับแต่ละ browser context แยกกันได้ context ไม่แชร์คุกกี้หรือ storage ดังนั้นแต่ละอันจึงทำตัวเหมือนโปรไฟล์แยกบน IP ของตัวเอง ตัวอย่าง Node.js วนลูปสอง IP เปิด api.ipify.org ในแต่ละ context แล้วปิด context หลังใช้งาน กรอกรายการด้วย host, port, username และ password ของแต่ละ IP จากแดชบอร์ดของคุณ

playwright_contexts.mjs: หนึ่ง context ต่อหนึ่ง IP แบบสแตติก (Node.js)
// 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();
}

ควรใช้ HTTP หรือ SOCKS5 ใน Playwright?

ในกรณีส่วนใหญ่ให้ใช้พอร์ต HTTP พร้อม username และ password เป็นชุดค่าผสมที่เอกสารของ Playwright อธิบายไว้สำหรับการ login พร็อกซี และหน้า HTTPS จะวิ่งผ่านอุโมงค์ CONNECT ใช้ SOCKS5 กับ server แบบ socks5:// เฉพาะเมื่อเครื่องของคุณอยู่ใน IP allowlist จึงไม่ต้อง login พอร์ตทั้งสองของ IP แบบสแตติกเดียวกันให้ exit IP เดียวกัน SteadyProxy รองรับ HTTP, HTTPS (CONNECT) และ SOCKS5

จะรักษาการ login ระหว่างการรันบน IP แบบสแตติกเดียวกันได้อย่างไร?

บันทึก storage state ของ context หลังคุณ login แล้วโหลดในครั้งถัดไปด้วยพร็อกซีเดิม ใน Python context.storage_state(path='client-a.json') เขียนคุกกี้และ local storage;browser.new_context(storage_state='client-a.json', proxy=...) กู้คืนค่าเหล่านั้น เก็บไฟล์ state หนึ่งไฟล์ต่อหนึ่ง IP และต่อหนึ่งบัญชี และอย่าโหลด state ของบัญชีหนึ่งบน IP ของอีกบัญชีเด็ดขาด ให้ถือไฟล์เหล่านี้เป็นความลับ

อะไรที่มักผิดพลาดบ่อยที่สุด?

สี่ข้อผิดพลาดครอบคลุมกรณีส่วนใหญ่ ERR_PROXY_CONNECTION_FAILED หมายถึง host หรือ port ผิดหรือถูกบล็อกฝั่งคุณ การตอบกลับ 407 หมายถึง login ผิด หรือ source IP ไม่อยู่ใน allowlist ของคุณ ERR_TUNNEL_CONNECTION_FAILED หมายถึงพร็อกซีปฏิเสธเป้าหมาย;ให้ตรวจสอบรายการที่ถูกบล็อก: เว็บไซต์ธนาคาร ภาครัฐ พอร์ทัลการชำระเงิน และการจำหน่ายตั๋ว รวมถึงพอร์ต SMTP (การส่งอีเมล) 25, 465 และ 587 การ timeout ทุกหน้าเว็บชี้ไปที่ความผิดพลาดบน IP;ทดสอบด้วย curl แล้วติดต่อฝ่ายสนับสนุน

มีคำถามอื่น ๆ อะไรอีกที่ผู้คนถามเกี่ยวกับ Playwright และพร็อกซีแบบสแตติก?

ใส่ username และ password ใน URL ของ server ได้ไหม?

ให้ใช้ช่อง username และ password แยกกันแทน เป็นวิธีที่เอกสารระบุไว้สำหรับ login เข้าพร็อกซี HTTP ใน Playwright และหลีกเลี่ยงปัญหาการเข้ารหัส URL กับอักขระพิเศษ ช่อง server จึงเก็บเฉพาะ scheme, host และ port ของ IP แบบสแตติกของคุณ

แต่ละหน้าใน Playwright ได้ IP ของตัวเองไหม?

ไม่ได้ หน้าเว็บสืบทอดพร็อกซีจาก context ของตน และ context สืบทอดพร็อกซีของเบราว์เซอร์ เว้นแต่จะตั้งของตัวเอง ทุกหน้าใน context เดียวแชร์ IP แบบสแตติกหนึ่งตัว หากต้องการหลาย IP ให้สร้างหลาย context ดังในตัวอย่าง Node.js หรือหลายเบราว์เซอร์

ใช้ Firefox หรือ WebKit กับพร็อกซีแบบสแตติกใน Playwright ได้ไหม?

ได้ ออปชัน proxy มีรูปแบบเดียวกันสำหรับการ launch chromium, firefox และ webkit ทดสอบแต่ละเอนจินด้วย api.ipify.org เพราะเอนจินต่างกันในการจัดการข้อผิดพลาดพร็อกซีบางอย่าง สำหรับ QA ข้ามเอนจิน ให้ใช้ IP แบบสแตติกเดียวกันกับทุกเอนจินเพื่อให้ผลลัพธ์เทียบกันได้

ควรตั้ง locale และ timezone ให้ตรงกับ IP ไหม?

สำหรับ local QA และการทดสอบ geolocation ควรตั้ง: browser.new_context(locale='de-DE', timezone_id='Europe/Berlin') ทำให้เว็บไซต์ของคุณแสดงผลเหมือนกับผู้เยี่ยมชมในพื้นที่จริง สิ่งนี้เปลี่ยนสิ่งที่เบราว์เซอร์ทดสอบของคุณร้องขอ ไม่ใช่ IP ซึ่งยังคงเป็นตัวกำหนดประเทศที่เว็บไซต์ของคุณตรวจพบ ดู geolocation QA สำหรับแผนการทดสอบ

จะตรวจสอบได้อย่างไรว่าทุก context ใช้ IP ที่ถูกต้อง?

เปิด api.ipify.org ก่อนในแต่ละ context ใหม่ แล้วเปรียบเทียบคำตอบกับรายการ IP ในแดชบอร์ดของคุณ ให้การรันล้มเหลวหากไม่ตรงกัน ต้นทุนคือคำขอเบา ๆ หนึ่งครั้งต่อ context และป้องกันไม่ให้การรันทั้งหมดออกไปบน IP ผิด

การรัน 10 context ของ Playwright บน 10 IP แบบสแตติกมีค่าใช้จ่ายเท่าไร?

ณ เดือนตุลาคม 2026 IP แบบ ISP 10 ตัวมีค่าใช้จ่าย US$20.86 และ IP datacenter เฉพาะ 10 ตัวมีค่าใช้จ่าย US$12.69 อย่างละ 30 วัน การเรียกเก็บเงินคิดต่อ IP ไม่ใช่ต่อ GB ชำระด้วยคริปโต ไม่ต้อง KYC ดู pricing สำหรับทุกขนาดแพ็กเกจ

คู่มือนี้ใช้แหล่งข้อมูลใด? (3)
  1. เครือข่าย: พร็อกซี HTTP (Python) — Playwright (2026-10-19)
  2. เครือข่าย: พร็อกซี HTTP (Node.js) — Playwright (2026-10-19)
  3. ipify API — ipify (2026-10-19)

เริ่มต้นที่ US$2.24 ต่อ ISP IP · 30 วัน · ไม่ต้อง KYC

ดูราคา