Почему Playwright + AI — это мощная комбинация
Playwright — библиотека для автоматизации браузера от Microsoft. Она позволяет программно управлять Chrome, Firefox и Safari: открывать страницы, кликать кнопки, заполнять формы, делать скриншоты и извлекать данные.
AI — большие языковые модели, которые понимают контекст и принимают решения. Когда Playwright предоставляет AI «руки» (действия в браузере), а AI обеспечивает «мозг» (понимание задачи и принятие решений), получается инструмент, способный автоматизировать практически любую веб-задачу.
Классический Playwright vs AI-Playwright
Классический подход: Вы пишете скрипт с жёсткой логикой — «открой URL, найди элемент с селектором #price, извлеки текст». Если сайт меняет вёрстку, скрипт ломается.
AI-подход: Вы описываете задачу — «открой каталог, найди все товары и их цены». AI анализирует страницу, находит нужные элементы независимо от конкретных селекторов и извлекает данные. Если вёрстка меняется, AI адаптируется.
MCP-сервер Playwright
Что это
MCP-сервер Playwright позволяет AI-агентам (Claude Code, Cursor) управлять браузером через стандартный протокол. AI-агент видит набор инструментов — navigate, click, fill, screenshot, extract_text — и использует их для решения задач.
Как подключить
Добавьте в конфигурацию MCP (файл .mcp.json в проекте):
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-playwright"]
}
}
}
После этого AI-агент в Claude Code получает доступ к браузерным инструментам и может автоматизировать веб-задачи через естественный язык.
Доступные инструменты
MCP-Playwright предоставляет набор инструментов:
- navigate — переход по URL
- click — клик по элементу (по тексту, селектору или описанию)
- fill — заполнение полей ввода
- select — выбор из выпадающего списка
- screenshot — скриншот страницы
- extract_text — извлечение текста со страницы
- evaluate — выполнение JavaScript на странице
- wait — ожидание элемента или условия
Практика: парсинг данных
Парсинг каталога товаров
Задача: собрать названия, цены и рейтинги товаров из каталога интернет-магазина.
Промпт для Claude Code с MCP-Playwright:
«Открой каталог [URL]. На каждой странице каталога собери: название товара, цену, рейтинг. Переходи по страницам пагинации, пока не соберёшь все товары. Сохрани результат в файл products.csv с колонками name, price, rating».
AI-агент самостоятельно:
- Открывает первую страницу каталога
- Анализирует структуру страницы
- Извлекает данные о товарах
- Находит кнопку «Следующая страница»
- Переходит по пагинации
- Собирает данные со всех страниц
- Формирует CSV-файл
Парсинг с авторизацией
Для сайтов, требующих авторизации:
«Перейди на [URL], авторизуйся с логином [login] и паролем [password]. После авторизации перейди в личный кабинет, раздел “Заказы”, и собери список заказов с датами и суммами».
AI-агент находит форму логина, заполняет поля, отправляет форму, дожидается загрузки личного кабинета и собирает данные.
Парсинг динамического контента
Многие современные сайты загружают контент через JavaScript (SPA, infinite scroll). Playwright справляется с этим нативно, так как рендерит страницы как настоящий браузер.
«Открой [URL]. Страница использует infinite scroll — прокручивай вниз, пока не загрузятся все элементы (или пока не соберётся 500 элементов). Для каждого элемента извлеки заголовок и ссылку».
Практика: мониторинг конкурентов
Отслеживание цен
Создайте систему мониторинга цен конкурентов:
- Скрипт парсинга: Playwright открывает страницы конкурентов и собирает текущие цены
- Хранение: Цены сохраняются в базу данных с временной меткой
- Анализ: AI анализирует тренды и выявляет аномалии
- Уведомления: При значительном изменении цен — уведомление в Telegram
Мониторинг контента
Отслеживайте новые публикации конкурентов:
- Playwright проверяет блоги и новостные разделы конкурентов
- AI анализирует новые публикации: тема, ключевые слова, структура
- Результаты сохраняются в базу для последующего анализа
Мониторинг рекламных кампаний
Через Playwright можно мониторить рекламу конкурентов:
- Открыть поисковую выдачу по целевым запросам
- Собрать текст рекламных объявлений
- Перейти по ссылкам и проанализировать посадочные страницы
- Сравнить с предыдущими данными для выявления изменений
Практика: автоматизация тестирования
E2E-тесты с AI
Playwright — стандартный инструмент для E2E-тестирования. AI добавляет интеллект:
Генерация тестов: «Проанализируй страницу регистрации [URL]. Создай набор E2E-тестов на Playwright: успешная регистрация, регистрация с существующим email, невалидный пароль, пустые поля».
AI-агент открывает страницу, анализирует форму, определяет поля и валидации, генерирует тестовые сценарии.
Визуальное тестирование: Playwright делает скриншоты страниц, AI сравнивает их с эталонами и выявляет визуальные регрессии.
Тестирование SEO
Автоматизируйте проверки технического SEO:
- Наличие и корректность мета-тегов на каждой странице
- Правильная структура заголовков (H1, H2, H3)
- Скорость загрузки страниц
- Наличие broken links
- Корректность schema.org разметки
- Работоспособность canonical URL
Практика: автоматизация рутины
Автозаполнение форм
Многие рабочие задачи включают заполнение форм в веб-интерфейсах: CRM, тикет-системы, админ-панели. Playwright автоматизирует это:
«Открой CRM [URL]. Для каждой записи из файла leads.csv создай нового лида: заполни имя, email, телефон, источник. Нажми “Сохранить” и перейди к следующей записи».
Автопостинг в социальные сети
Playwright позволяет автоматизировать публикации в социальных сетях, у которых нет удобного API:
- Авторизация через сохранённые куки
- Навигация к форме создания поста
- Заполнение текста и загрузка медиа
- Публикация
Генерация отчётов
Автоматизируйте выгрузку данных из веб-сервисов, у которых нет API:
- Открыть рекламный кабинет
- Настроить фильтры и период
- Скачать отчёт
- Обработать данные через AI
Антидетект и обход защит
Fingerprint
Сайты могут определять автоматизированные браузеры по fingerprint. Playwright позволяет настроить:
- User-Agent
- Разрешение экрана
- Часовой пояс
- Языки
- WebGL-параметры
Ротация прокси
Для массового парсинга необходима ротация IP-адресов. Playwright поддерживает прокси:
browser = playwright.chromium.launch(
proxy={"server": "http://proxy:port"}
)
Задержки и человеческое поведение
Для имитации человеческого поведения добавляйте случайные задержки, движения мыши и прокрутку. AI может генерировать реалистичные паттерны поведения, что усложняет детектирование.
Архитектура масштабного решения
Для единичных задач
Простой скрипт: Playwright + Claude API. Запуск вручную или через cron. Достаточно для парсинга до 1000 страниц в день.
Для средних задач
Добавьте очередь задач (Celery + Redis) и базу данных (PostgreSQL). Несколько воркеров парсят параллельно. До 10 000 страниц в день.
Для масштабных задач
Распределённая система: Docker-контейнеры с Playwright на нескольких серверах, пул прокси, центральная база данных, мониторинг и алертинг. До 100 000+ страниц в день.
Юридические аспекты
Что разрешено
- Парсинг общедоступных данных (цены, каталоги, публичные профили)
- Автоматизация собственных аккаунтов
- Тестирование собственных сайтов
Что запрещено или спорно
- Обход captcha и DRM-защит
- Парсинг персональных данных без согласия
- Нарушение условий использования сервисов
- DDoS-подобная нагрузка на сторонние сайты
Рекомендации
- Читайте robots.txt и Terms of Service
- Соблюдайте задержки между запросами
- Не парсите персональные данные
- Используйте кэширование для снижения нагрузки
Выводы
- Playwright + AI — самая мощная комбинация для веб-автоматизации в 2026 году. AI обеспечивает интеллект, Playwright — возможность действовать в браузере.
- MCP-сервер Playwright позволяет управлять браузером через естественный язык в Claude Code. Вместо написания селекторов вы описываете задачу словами.
- Парсинг, мониторинг, тестирование, автоматизация рутины — четыре основных сценария использования. Каждый из них экономит часы рабочего времени.
- Масштабирование требует архитектуры: очереди задач, пулы прокси, параллельные воркеры. Для начала достаточно простого скрипта.
- Юридические аспекты важны. Автоматизация даёт возможности, но с ними приходит и ответственность. Соблюдайте правила и уважайте ресурсы чужих серверов.
