วิธีตั้งค่าพร็อกซีใน Playwright (การยืนยันตัวตนระดับเบราว์เซอร์และราย Context)

อัปเดตเมื่อ:

Playwright รองรับการยืนยันตัวตน HTTP proxy ในตัว (server, username, password) ทั้งบน Chromium, Firefox และ WebKit โดยไม่ต้องติดตั้งส่วนขยายหรือไลบรารีเสริม ยิ่งไปกว่านั้น ฟีเจอร์ Per-Context Proxy ของ Playwright ยังช่วยให้เบราว์เซอร์หนึ่งตัวสามารถเปิดเซสชัน BrowserContext ที่แยกขาดจากกันได้หลายสิบเซสชัน โดยแต่ละเซสชันเชื่อมต่อกับ IP แบบคงที่ของ VinaProxy ของตัวเอง

Playwright · HTTP Proxy Format
proxy={ server: 'http://ip:port', username: 'user', password: 'pass' }
IPv4 ส่วนตัว (Datacenter)
🇺🇸 United States
มีสินค้า
เริ่มต้น
₫20,000 / IP / เดือน
≈ US$0.74 · ชำระเป็น VND
ส่วนลดตามจำนวนการสั่งซื้อ
  • 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
ซื้อ United States
ISP Residential แบบคงที่
🇻🇳 Vietnam
มีสินค้า
เริ่มต้น
₫25,000 / IP / เดือน
≈ US$0.93 · ชำระเป็น VND
ส่วนลดตามจำนวนการสั่งซื้อ
  • 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
ซื้อ Vietnam
พร็อกซีตามแพลตฟอร์ม:web-scrapingseo-rank-trackingshopee

การกำหนดค่าออบเจกต์ proxy ใน Playwright

ส่งออบเจกต์ proxy ได้ทั้งระดับโกลบอลใน chromium.launch({ proxy }) หรือระดับเซสชันใน browser.newContext({ proxy }):

คีย์ของ Playwrightรูปแบบค่าหมายเหตุทางเทคนิค
server'http://ip:port'ระบุเฉพาะโฮสต์และพอร์ต โดยต้องมี http:// นำหน้า
username'user'ชื่อผู้ใช้พร็อกซีจากแดชบอร์ด VinaProxy
password'pass'รหัสผ่านพร็อกซี (Playwright จัดการการตอบสนอง HTTP 407 อัตโนมัติ)
bypass'localhost,127.0.0.1'รายชื่อโฮสต์ที่ไม่ต้องผ่านพร็อกซี คั่นด้วยเครื่องหมายจุลภาค (ระบุหรือไม่ก็ได้)

แนวทางปฏิบัติเพื่อรัน BrowserContext หลาย IP อย่างมีประสิทธิภาพ

  • บน Windows และ macOS หากต้องการกำหนด proxy แยกในแต่ละ browser.newContext() จำเป็นต้องระบุตัวแทน proxy: { server: 'http://per-context' } ในคำสั่ง chromium.launch() เพื่อเปิดใช้งานระบบเราต์พร็อกซีของ Chromium
  • ตั้งค่า timezoneId และ locale ใน browser.newContext() ให้สอดคล้องกับตำแหน่งประเทศของพร็อกซี เพื่อให้เฮดเดอร์และ API Intl ของ JavaScript ตรงกับเป้าหมาย
  • ยกเลิกคำขอรูปภาพและฟอนต์ที่ไม่จำเป็นด้วย page.route() เพื่อเพิ่มความเร็วในการดึงข้อมูล (scraping)

ขั้นตอนทีละขั้น

  1. 1

    คัดลอก IP, Port, Username และ Password

    คัดลอกข้อมูลการเข้าสู่ระบบ ip:port:user:pass จากแดชบอร์ด VinaProxy

  2. 2

    ส่งออบเจกต์ proxy ไปยัง newContext()

    เรียกใช้คำสั่ง const context = await browser.newContext({ proxy: { server: 'http://ip:port', username: 'user', password: 'pass' } })

  3. 3

    ปรับ timezoneId และ locale ให้ตรงกับพื้นที่

    กำหนด timezoneId และ locale ให้ตรงกับประเทศของพร็อกซี (เช่น America/New_York หรือ Asia/Ho_Chi_Minh)

  4. 4

    ตรวจสอบ IP ขาออกบนหน้าเว็บใหม่

    เปิดหน้าต่างใหม่ด้วย const page = await context.newPage() แล้วส่งคำขอไปที่ https://vinaproxy.com/api/my-ip

คำถามที่พบบ่อย

ทำไม Playwright ถึงแจ้งข้อผิดพลาด 'Proxy is only supported when browser is launched with a proxy'?

บน Windows และ macOS เบราว์เซอร์ Chromium ต้องการการเปิดใช้แฟล็กพร็อกซีส่วนกลางขณะเริ่มต้น ก่อนที่จะอนุญาตให้แก้ไขพร็อกซีแยกตามคอนเทกต์ ให้เปิดเบราว์เซอร์ด้วย chromium.launch({ proxy: { server: 'http://per-context' } }) จากนั้นจึงส่งพร็อกซีจริงไปยังแต่ละ browser.newContext({ proxy })

พร็อกซี VinaProxy ใช้งานร่วมกับ Firefox และ WebKit ใน Playwright ได้หรือไม่?

ได้ รูปแบบออบเจกต์ proxy: { server, username, password } ใช้งานได้เหมือนกันทั้งหมดบน Chromium, Firefox และ WebKit ทั้งใน Node.js และ Python

มีการจำกัดปริมาณข้อมูลแบนด์วิดท์เมื่อรัน Playwright ในโหมด headless หรือไม่?

ไม่ ทุกแพ็กเกจ Dedicated IPv4 และ Static ISP ของ VinaProxy มาพร้อมปริมาณการใช้งานไม่จำกัดต่อเดือน

ขยายขนาด Playwright BrowserContext ด้วย IP แบบคงที่เฉพาะคุณ

HTTP(S) พร็อกซีความเร็วสูง ไม่จำกัดปริมาณข้อมูล ครอบคลุม 7 ตำแหน่งทั่วโลก

ซื้อพร็อกซีสำหรับ Playwright

บทความที่เกี่ยวข้อง

พร็อกซีตามแพลตฟอร์ม
พร็อกซีสำหรับ Web Scraping: พูล IPv4 และ ISP แบบเฉพาะไม่จำกัด สำหรับบอทดูดข้อมูล 24/7
พร็อกซี HTTP(S) IPv4 แบบเฉพาะและ ISP แบบคงที่ความเร็วสูงสำหรับ Python, Playwright, Selenium และ Scrapy พร้อมแบนด์วิดท์รายเดือนไม่จำกัด
วิธีตั้งค่าพร็อกซี
วิธีตั้งค่าพร็อกซีพร้อมยืนยันตัวตนใน Puppeteer (Node.js)
วิธีกำหนดค่า HTTP(S) proxy พร้อมการยืนยันตัวตนใน Node.js Puppeteer ด้วยแฟล็ก --proxy-server และเมธอด await page.authenticate()
วิธีตั้งค่าพร็อกซี
วิธีตั้งค่าพร็อกซีที่มีการยืนยันตัวตนใน Selenium WebDriver
วิธีกำหนดค่าพร็อกซี HTTP(S) ที่มีชื่อผู้ใช้และรหัสผ่านใน Selenium WebDriver โดยใช้ selenium-wire หรือส่วนขยาย onAuthRequired ของ Chrome
วิธีตั้งค่าพร็อกซี
วิธีใช้พร็อกซีใน Python Requests (HTTP/HTTPS และการรวม Session Pooling)
วิธีกำหนดค่าพร็อกซี HTTP(S) ที่มีรหัสผ่านใน Python requests และ requests.Session() วิธีแก้ปัญหา 407 ProxyError และการหมุนเวียนพูล IP นิ่ง
พร็อกซีตามแพลตฟอร์ม
พร็อกซีสำหรับ SEO และติดตามอันดับ SERP: แสดงอันดับคำค้นหาที่แม่นยำใน 7 ประเทศ
ติดตามอันดับคีย์เวิร์ดระดับท้องถิ่น ตรวจสอบการเปลี่ยนเส้นทางตามพิกัดภูมิศาสตร์ และรัน Screaming Frog ด้วยพร็อกซี IPv4 แบบเฉพาะและ ISP แบบคงที่ไม่จำกัดแบนด์วิดท์
พร็อกซีตามแพลตฟอร์ม
พร็อกซีสำหรับ Shopee: แยกแต่ละร้านค้า Seller Centre ด้วย IP คงที่เฉพาะตัว
จัดการหลายร้านค้าบน Shopee Seller Centre อย่างปลอดภัย ไร้กังวลเรื่องการโดนแบนบัญชีที่เชื่อมโยงกัน ด้วยพร็อกซี ISP คงที่และ IPv4 ส่วนตัวของเวียดนาม
IPV4 · united states
พร็อกซี IPv4 สหรัฐฯ ส่วนตัว: IP ดาต้าเซ็นเตอร์อเมริกาความเร็วสูงเฉพาะคุณ
พร็อกซี IPv4 ส่วนตัวสหรัฐฯ สำหรับดึงข้อมูล เช็กอันดับ ตรวจสอบโฆษณา และรีเสิร์ช Amazon มี IP คงที่ ใช้คนเดียว แบนด์วิดท์ไม่จำกัด เปิดใช้งานไว
ISP · vietnam
พร็อกซี ISP แบบคงที่เวียดนาม: IP เครือข่ายบ้านสำหรับบัญชีที่สำคัญที่สุดของคุณ
พร็อกซี ISP เวียดนามคงที่จากผู้ให้บริการอินเทอร์เน็ตบ้าน สำหรับร้าน Shopee หลัก, TikTok Shop, บัญชีโฆษณา Facebook และ Zalo OA แบนด์วิดท์ไม่จำกัด