Налаштування проксі в Playwright
Playwright — це сучасний фреймворк для веб-скрапінгу та автоматизації, який підтримує кілька мов програмування та добре інтегрується з проксі CyberYozh для додаткової безпеки та стабільності сесій. Тут ви дізнаєтесь, як налаштувати Playwright і переконатися, що ваша робота виконана якісно.
Підготовка: вибір проксі для використання з Playwright
Перед налаштуванням інтеграції проксі з Playwright необхідно побудувати правильну інфраструктуру для скрапінгу/автоматизації. Тип вашого проксі визначає рівень довіри, стабільність сесії, швидкість і те, як платформи сприймають ваш трафік.
Мобільні проксі: соціальні дані та точне геотаргетування
Мобільні проксі мають найвищий рівень довіри серед усіх типів проксі, що робить їх рекомендованим вибором для скрапінгу соціальних мереж і мобільних додатків, таких як Instagram, TikTokта Snapchat.

Мобільні проксі CyberYozh пропонують високий рівень налаштування для точного геотаргетування, налаштувань цифрового відбитка та необмеженого трафіку; ідеально підходять, коли потрібно, щоб Playwright емулював справжнього мобільного користувача.
Резидентські проксі: загальний скрапінг даних та автоматизація
Резидентські проксі поділяються на два типи залежно від вашого випадку використання:
Статичні резидентські проксі надають фіксовану резидентську IP-адресу з конкретної країни, яку платформи сприймають як звичайного домашнього інтернет-користувача. Вони ідеально підходять для робочих процесів, пов'язаних з акаунтами.

Ротаційні резидентські проксі використовують пул із понад 50 млн IP-адрес у понад 100 країнах, змінюючи адреси на кожен запит або на кожну сесію. Вони найкраще підходять для масової автоматизації та великомасштабного веб-скрапінгу з Playwright

Обирайте статичні резидентські IP для довгострокового управління акаунтами за схемою 1 IP = 1 акаунт, тоді як ротаційні IP необхідні для всіх масових веб-активностей із належною стратегією ротації IP на основі кожного конкретного випадку використання.
Проксі датацентру: відкриті бази даних і тестування додатків
Проксі датацентру забезпечують найшвидшу швидкість з'єднання, але асоціюються з нерезидентським, ботоподібним трафіком. Вони добре працюють для скрапінгу відкритих баз даних, тестування API та високошвидкісних завдань, де платформи застосовують мінімальне виявлення ботів, але можуть бути швидко обмежені на соціальних платформах, таких як Reddit або LinkedIn.

Додатковий інструмент: IP Checker для забезпечення якості
CyberYozh пропонує IP Checker , який перевіряє кожну IP-адресу в кількох базах даних про шахрайство, повертаючи оцінку довіри та повну історію. Перед ротацією на нову IP у вашій сесії Playwright перевірте її через чекер, щоб переконатися, що вона не спричинить блокування.

Отримайте доступ до API CyberYozh , щоб автоматизувати ротацію IP і перевіряти кожну вхідну IP-адресу перед ротацією, забезпечуючи її якість.
Початок встановлення Playwright: Вибір мови
Playwright підтримує чотири мови. Перед тим, як розпочати встановлення Playwright та налаштування проксі, оберіть мову, яка підходить для вашого стеку. Цей гайд використовує Python, як найпоширеніший вибір для роботи з проксі, але всі чотири варіанти описані в таблиці та коротких інструкціях нижче.
Мова | Ключові відмінності | Основні випадки використання | Коли обирати |
Node.js (JS/TS) | Стандартна мова Playwright; підтримка TypeScript «з коробки»; найбільша спільнота та документація | Наскрізне тестування, автоматизація браузера, frontend CI/CD | Ваша команда працює з JS/TS, або вам потрібні найбільш зрілі інструменти |
Python | Найбільш широко використовується в скрапінгу/ML; асинхронність через asyncio; інтегрується з Requests, Scrapy | Веб-скрапінг, конвеєри даних, автоматизація проксі, збір даних для ML | Вам потрібен інтенсивний скрапінг з проксі або інтеграція з data science |
.NET (C#) | Розповсюдження через NuGet; сувора типізація, добре підходить для корпоративного QA | Корпоративна автоматизація тестування, .NET додатки | Ваша організація використовує .NET стек |
Java | Розповсюдження через Maven/Gradle; інтеграція з JUnit | Корпоративні Java додатки, тестування, пов'язане з Android | Ваш проєкт базується на Java або потребує екосистеми JVM |
Node.js
Стандартна та найбільш повно задокументована мова Playwright. TypeScript підтримується нативно: Playwright встановлюється за допомогою npm, без додаткового налаштування.
npm init playwright@latestPython
Основна мова для завдань Playwright з проксі, скрапінгу та автоматизації даних. Потребує Python 3.8+ і зазвичай встановлюється через PyPI (pip).
pip install playwright
playwright install.NET (C#)
Розповсюджується як пакет NuGet. Потребує PowerShell (pwsh) для виконання кроку встановлення браузера.
dotnet new console -n PlaywrightDemo
cd PlaywrightDemo
dotnet add package Microsoft.Playwright
dotnet build
pwsh bin/Debug/netX/playwright.ps1 install Java
Розповсюджується як модуль Maven (mvn). Додайте залежність до вашого pom.xml у Maven, і браузери завантажаться автоматично при першій компіляції.
<dependency>
<groupId>com.microsoft.playwright</groupId>
<artifactId>playwright</artifactId>
<version>1.59.0</version>
</dependency> А потім виконайте команду:
mvn compile exec:java -D exec.mainClass="org.example.App"Налаштування проксі Playwright з Python
Тут ми розглянемо узагальнене розгортання сесії скрапінгу Playwright з проксі CyberYozh. Хоча стандартною мовою Playwright є Node.js/TypeScript, ми використаємо Python у нашому прикладі, оскільки Playwright з Python широко використовується для веб-автоматизації, скрапінгу та інших завдань, пов'язаних з проксі. Якщо вам потрібно використовувати TypeScript або у вас є конкретний випадок використання, що вимагає C# або Java, просто ознайомтеся з відповідною версією документації Playwright; код досить легко адаптувати.
Проксі-сервер Playwright — це мережевий посередник, який передає запити вашого браузера через іншу IP-адресу. Playwright передає конфігурацію проксі безпосередньо під час запуску браузера або на рівні контексту, направляючи весь трафік через вказаний сервер.
1. Отримайте проксі для вашого завдання
Увійдіть у свій акаунт CyberYozh, перейдіть до Мої проксіі виберіть тип проксі, що підходить для вашого завдання (мобільні, резидентські статичні, резидентські ротаційні, проксі датацентру).

Після покупки відкрийте картку проксі, натисніть Згенерувати облікові дані, виберіть режим ротації (Випадкова IP-адреса, Коротка сесія або Довга сесія) і перейдіть до хоста, порту, імені користувача та пароля.

Ці облікові дані будуть використовуватися протягом усього налаштування.
2. Завантажте та встановіть Playwright
Встановіть бібліотеку Playwright та її бінарні файли браузера через PyPI:
pip install playwright
playwright installЦе завантажить бінарні файли Chromium, Firefox та WebKit. Для скрапінгу стандартним вибором є Chromium.
3. Організуйте структуру проєкту
Створіть окрему папку проєкту (наприклад, scraper/). Зберігайте облікові дані окремо від коду та визначте чіткий шлях виводу для зібраних даних:
-.env документ для облікових даних проксі (завжди додавайте до .gitignore)
-scraper.py як основний скрипт Playwright
-requirements.txt для залежностей
output/ папка для зібраних даних (CSV/JSON)
4. Додайте конфігурацію проксі до файлу .env
Відкрийте файл .env у VS Code або будь-якому редакторі та скопіюйте свої облікові дані CyberYozh. Завжди додавайте .env до вашого .gitignore, щоб запобігти витоку облікових даних до репозиторіїв системи контролю версій.
HTTP_PROXY=http://username:password@proxy-server-ip:host
SOCKS5_PROXY=socks5://username:password@proxy-server-ip:host
Для конфігурації проксі Playwright SOCKS5 використовуйте схему socks5:// . Для стандартного використання проксі Playwright HTTP використовуйте http:// схемою. Переконайтеся, що вказали правильні порти з панелі управління CyberYozh. Якщо ви використовуєте CyberYozh API, ваш API-ключ також має бути тут вказаний.
CYBERYOZH_API_KEY=Ваш_API_URL_ключ
5. Створіть скрипт для скрейпінгу/автоматизації
Створіть тестовий файл Python із використанням Playwright. Він повинен мати приблизно таку структуру:
Створення сутностей браузера та контексту з налаштуваннями проксі
Налаштування автоматичної ротації та перевірки IP через CyberYozh API
Перехід на цільовий вебсайт і виконання скрейпінгу через біблііотеку Requests
Налаштування обробки помилок
Вказання вихідної папки для зібраних даних
Наведений нижче скрипт реалізує повне налаштування проксі Playwright у Python: сутність браузера, сутність контексту з автентифікацією проксі Playwright, автоматичну ротацію IP через CyberYozh API, виконання запитів, обробку помилок та вивід у файл.
import asyncio
import os
import json
import requests
from dotenv import load_dotenv
from playwright.async_api import async_playwright
load_dotenv()
PROXY_URL = os.getenv("HTTP_PROXY") # or SOCKS5, from the .env document
CYBERYOZH_API_KEY = os.getenv("CYBERYOZH_API_KEY") # API key from the .env document
TARGET_URL = "https://httpbin.org/ip" # the website to scrape; here is the test one
OUTPUT_FILE = "output/results.json" # output folder
def check_ip_quality(ip: str) -> bool:
"""Use CyberYozh IP Checker API to verify trust score before rotating."""
try:
response = requests.get(
f"https://app.cyberyozh.com/api/v1/ip-check?ip={ip}",
headers={"Authorization": f"Bearer {CYBERYOZH_API_KEY}"},
timeout=5
)
score = response.json().get("fraud_score", 100)
return score < 50 # Accept IPs with fraud score below 50
except Exception:
return True # Allow on API error
async def scrape(proxy_url: str) -> dict:
"""Run a single Playwright scraping session with proxy."""
# Parse proxy credentials for Playwright proxy authentication
from urllib.parse import urlparse
parsed = urlparse(proxy_url)
proxy_config = {
"server": f"{parsed.scheme}://{parsed.hostname}:{parsed.port}",
"username": parsed.username,
"password": parsed.password,
}
async with async_playwright() as p:
# Browser entity (headless to save traffic): launch with proxy server
browser = await p.chromium.launch(headless=True)
# Context entity: proxy settings applied per context
context = await browser.new_context(proxy=proxy_config)
page = await context.new_page()
try:
await page.goto(TARGET_URL, timeout=30000)
content = await page.inner_text("body")
result = json.loads(content)
return {"status": "ok", "ip": result.get("origin")}
except Exception as e:
return {"status": "error", "error": str(e)}
finally:
await context.close()
await browser.close()
async def main():
results = []
for i in range(5):
print(f"Request {i+1}: using proxy {PROXY_URL}")
data = await scrape(PROXY_URL)
print(f" → IP: {data.get('ip')} | Status: {data.get('status')}")
results.append(data)
os.makedirs("output", exist_ok=True)
with open(OUTPUT_FILE, "w") as f:
json.dump(results, f, indent=2)
print(f"Results saved to {OUTPUT_FILE}")
asyncio.run(main())Також перегляньте відповідний гайд: Налаштування ротації проксі в Python.
6. Запустіть тест і виконайте ротацію проксі
Запустіть скрейпер з кореневої директорії вашого проєкту:
python scraper.pyПереконайтеся, що кожен запит логує різну IP-адресу (підтверджуючи активну ротацію) і що файл output/results.json заповнюється. Використовуйте CyberYozh API для автоматичної ротації та автоматичних перевірок якості через IP Checker: проксі з високим показником шахрайства будуть відхилені перед наступним циклом ротації.
Дивіться також: Гайд з автоматизації веб-скрейпінгу
Підсумок: Використання Playwright з інфраструктурою CyberYozh
З налаштованими проксі Playwright і активними обліковими даними CyberYozh ви можете виконувати багатоцільовий скрейпінг, геотаргетовану автоматизацію та робочі процеси управління акаунтами в масштабі, спрямовуючи кожну сесію браузера через чисті резидентські або мобільні IP з валідацією показника шахрайства, водночас виводячи структуровані дані у вибраному форматі.
FAQ
Що таке проксі-сервер Playwright і навіщо він мені потрібен?
Проксі-сервер Playwright направляє трафік браузера Playwright через проміжну IP-адресу, маскуючи ваше походження. Це запобігає блокуванню IP, обходить геообмеження та робить автоматизовані сесії схожими на органічний трафік користувачів.
Як встановити проксі в Playwright?
Окремого кроку встановлення немає. Після виконання Playwright install передайте облікові дані вашого проксі через параметр proxy={"server": "...", "username": "...", "password": "..."} у chromium.launch() або browser.new_context().
Як використовувати Playwright з автентифікацією проксі?
Передайте ключі "username" і "password" всередині словника proxy при запуску браузера або створенні контексту. Playwright нативно обробляє автентифікацію проксі Playwright без потреби в додаткових бібліотеках.
Чи підтримує Playwright проксі SOCKS5?
Так. Використовуйте socks5:// схему в URL сервера з правильним номером порту.
Яка різниця між проксі Playwright, встановленими на рівні браузера, та на рівні контексту?
Проксі на рівні браузера застосовуються до всіх контекстів і сторінок. Проксі на рівні контексту дозволяють використовувати різні проксі Playwright для кожної сесії, що забезпечує роботу з кількома акаунтами, де кожен контекст використовує окрему IP-адресу.
Який тип проксі CyberYozh найкращий для веб-скрейпінгу на Python з проксі Playwright?
Використовуйте ротаційні резидентські проксі для масового скрейпінгу (пул 50M+ IP, ротація на кожен запит) та мобільні проксі для соціальних мереж. Проксі датацентру підходять для відкритих баз даних, де потрібна швидкість.
Як автоматично ротувати проксі в Playwright?
З ротаційними резидентськими проксі CyberYozh ротація вбудована: використовуйте суфікс -res-any у вашому імені користувача, і кожен новий запит отримуватиме свіжу IP-адресу. Ручне керування пулом не потрібне.
Чи можу я використовувати проксі Playwright з asyncio Python для паралельного скрейпінгу?
Так. Використовуйте async_playwright з asyncio. Кожен виклик browser.new_context(proxy=...) може отримати різну конфігурацію проксі, що дозволяє паралельні сесії з різними IP-адресами.
Чому мій скрейпер Playwright все ще блокується навіть з проксі?
Блокування відбувається, коли IP-адреси мають високий показник шахрайства, ротація занадто агресивна або відбитки браузера непослідовні. Перевірте якість IP за допомогою CyberYozh IP Checker і розгляньте можливість поєднання проксі з антидетект-браузером для високозахищених цілей.
Як безпечно використовувати змінні середовища для облікових даних проксі Playwright?
Зберігайте облікові дані у файлі .env (доданому до .gitignore), завантажуйте їх за допомогою python-dotenv і передавайте в chromium.launch(). Ніколи не вбудовуйте рядки проксі безпосередньо у вихідний код і не комітьте їх у систему контролю версій.