Как настроить прокси в Playwright для парсинга
Playwright — это современный фреймворк для веб-скрейпинга и автоматизации, который поддерживает несколько языков программирования и хорошо интегрируется с прокси CyberYozh для дополнительной безопасности и стабильности сессий. Здесь вы узнаете, как настроить Playwright и обеспечить качественное выполнение задач.
Подготовка: выбор прокси для использования с Playwright
Перед настройкой интеграции прокси с Playwright необходимо построить правильную инфраструктуру для скрейпинга/автоматизации. Тип прокси определяет уровень доверия, стабильность сессий, скорость и то, как платформы воспринимают ваш трафик.
Мобильные прокси: данные социальных сетей, точный геотаргетинг и поисковая выдача Google (SERP)
Мобильные прокси обладают абсолютно наивысшим уровнем доверия среди всех типов прокси. Они являются обязательным выбором для извлечения данных из социальных сетей, таких как Instagram, TikTok и Snapchat. Вы также можете использовать инфраструктуру мобильных LTE/5G прокси для многопоточного, круглосуточного парсинга поисковой выдачи Google (SERP). Мобильные операторы используют технологию CGNAT, скрывая тысячи реальных пользователей смартфонов за одним IP-адресом. Google не может заблокировать эти узлы без отключения от сети реальных людей. Данная архитектура предоставляет безлимитный трафик, позволяя бесконечно масштабировать сбор данных без оплаты за каждый загруженный гигабайт.

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

Ротационные резидентские прокси опираются на инфраструктуру из 100M+ IP-адресов в 195+ странах. Вы можете менять адреса при каждом запросе или поддерживать липкие сессии (sticky sessions) длительностью до 24 часов. Они формируют необходимый фундамент для массовой автоматизации, масштабного веб-скрейпинга и обеспечения стабильного сетевого контекста для современных ИИ-агентов (таких как Crawl4AI и Open Scraper).

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

Дополнительный инструмент: Оценка рисков до выполнения (Risk Evaluation Before Execution)
CyberYozh предоставляет IP Checker, который сканирует каждый IP-адрес по главным антифрод-базам для возврата строгого показателя риска (Fraud Score) и полной истории. Внедрите пайплайн «Оценка рисков до выполнения» (Risk Evaluation Before Execution). Прогоните IP через чекер перед инициализацией экземпляра браузера. Это позволит оценить ваш реальный уровень риска и поможет поддерживать высокий показатель успешных операций (Operational Success Rate), полностью заменяя ложные гарантии «стопроцентного обхода банов».

Получите доступ к CyberYozh API , чтобы автоматизировать ротацию 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, перейдите в раздел Мои проксии выберите тип прокси, подходящий для вашей задачи (мобильные, резидентские статичные, резидентские ротационные, прокси датацентра).

После покупки откройте карточку прокси, нажмите Сгенерировать учетные данные, выберите режим ротации (Random IP, Short Session или Long Session) и перейдите к хосту, порту, имени пользователя и паролю.

Эти учетные данные будут использоваться на протяжении всей настройки.
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
Для настройки прокси SOCKS5 в Playwright используйте схему socks5:// . Для стандартного использования HTTP-прокси в Playwright используйте http:// схему. Убедитесь, что указали правильные порты из панели управления CyberYozh. Если вы используете API CyberYozh, здесь также необходимо указать ваш API-ключ.
CYBERYOZH_API_KEY=Ваш_API_URL_ключ
5. Создайте скрипт для скрейпинга/автоматизации
Создайте тестовый файл Python с использованием Playwright. Он должен иметь примерно следующую структуру:
Создание сущностей браузера и контекста с настройками прокси
Настройка автоматической ротации и проверки IP через API CyberYozh
Переход на целевой сайт и выполнение скрейпинга через библиотеку Requests
Настройка обработки ошибок
Указание выходной папки для собранных данных
Приведённый ниже скрипт реализует полную настройку прокси Playwright в Python: сущность браузера, сущность контекста с аутентификацией прокси Playwright, автоматическую ротацию IP через API CyberYozh, выполнение запросов, обработку ошибок и вывод в файл.
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 заполняется. Используйте API CyberYozh для автоматической ротации и автоматических проверок качества через IP Checker: прокси с высоким показателем мошенничества будут отклонены перед следующим циклом ротации.
См. также: Гайд по автоматизации веб-скрейпинга
Итоги: использование Playwright с инфраструктурой CyberYozh
С настроенными прокси Playwright и активными учётными данными CyberYozh вы можете выполнять мультицелевой скрейпинг, геотаргетированную автоматизацию и рабочие процессы управления аккаунтами в масштабе, направляя каждую сессию браузера через чистые резидентские или мобильные IP с проверкой показателя мошенничества, выводя при этом структурированные данные в выбранном формате.
