כיצד להגדיר פרוקסי ב-Playwright (אימות דפדפן ואימות לפי Context)
Updated:
Playwright תומך באימות מובנה של פרוקסי HTTP (server, username, password) ישירות מהקופסה ב-Chromium, ב-Firefox וב-WebKit — ללא צורך בתוספי דפדפן או במעטפות צד שלישי. יתרה מזאת, תכונת ה-Per-Context Proxy של Playwright מאפשרת למופע דפדפן יחיד להריץ עשרות הפעלות BrowserContext מבודדות, כאשר כל אחת מהן משויכת לכתובת IP סטטית משלה מבית VinaProxy.
proxy={ server: 'http://ip:port', username: 'user', password: 'pass' }- 1 IP40,000 ₫
- 5+ כתובות IP35,000 ₫
- 10+ כתובות IP25,000 ₫
- 20+ כתובות IP25,000 ₫
- 50+ כתובות IP25,000 ₫
- 100+ כתובות IP25,000 ₫
- 200+ כתובות IP25,000 ₫
- 500+ כתובות IP25,000 ₫
- 1000+ כתובות IP22,000 ₫
- 2000+ כתובות IP20,000 ₫
- 1 IP50,000 ₫
- 3+ כתובות IP40,000 ₫
- 5+ כתובות IP40,000 ₫
- 10+ כתובות IP32,000 ₫
- 50+ כתובות IP30,000 ₫
- 100+ כתובות IP30,000 ₫
- 200+ כתובות IP30,000 ₫
- 500+ כתובות IP25,000 ₫
הגדרת אובייקט פרוקסי ב-Playwright
העבירו את אובייקט ההגדרה proxy באופן גלובלי ב-chromium.launch({ proxy }) או עבור כל סשן בנפרד ב-browser.newContext({ proxy }):
| מפתח ב-Playwright | פורמט ערך | הערה טכנית |
|---|---|---|
server | 'http://ip:port' | מארח ופורט בלבד, עם קידומת http:// |
username | 'user' | שם המשתמש שלכם לפרוקסי מבית VinaProxy |
password | 'pass' | סיסמת הפרוקסי שלכם ב-VinaProxy (מטופלת באופן מובנה בשגיאת HTTP 407) |
bypass | 'localhost,127.0.0.1' | אופציונלי: רשימת מארחים מופרדים בפסיקים שיעקפו את הפרוקסי |
הפעלת מספר BrowserContexts עם כתובות IP שונות ביעילות
- ב-Windows וב-macOS, העבירו שומר מקום
proxy: { server: 'http://per-context' }בתוךchromium.launch()בכל פעם שאתם מתכוונים לדרוס את ה-proxyבתוך קריאותbrowser.newContext()נפרדות - הגדירו
timezoneIdו-localeב-browser.newContext()לצד הפרוקסי שלכם, כך שכותרות ה-HTTP וממשקי ה-Intlב-JS יתאימו למדינת הפרוקסי - בטלו בקשות מיותרות לתמונות וגופנים באמצעות
page.route()כדי להאיץ את קצב הסריקה
שלב אחר שלב
- 1
חילוץ ip, port, username ו-password
העתיקו את פרטי ההתחברות
ip:port:user:passמלוח הבקרה של VinaProxy. - 2
העברת אובייקט הפרוקסי ל-newContext()
קראו ל-
const context = await browser.newContext({ proxy: { server: 'http://ip:port', username: 'user', password: 'pass' } }). - 3
התאמת timezoneId ו-locale
הוסיפו
timezoneIdו-localeהתואמים למיקום הפרוקסי שלכם (למשל,America/New_YorkאוAsia/Ho_Chi_Minh). - 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 דורש דגל פרוקסי גלובלי בעת ההפעלה לפני שהוא מאפשר דריסה ברמת ה-Context. הפעילו את הדפדפן באמצעות 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 כוללות תעבורה חודשית ללא הגבלה.
הרחיבו את ה-BrowserContexts ב-Playwright עם כתובות IP סטטיות ייעודיות
פרוקסי HTTP(S) מיידי ללא הגבלת תעבורה ב-7 מיקומים ברחבי העולם.
קנו פרוקסי ל-Playwright