Closer to the Metal: Leaving Playwright for CDP
Прощай, Playwright — здравствуй, CDP
Мы отказались от Playwright и перешли на «родной» Chrome DevTools Protocol. Это ускорило извлечение элементов, скриншоты и действия, добавило асинхронные реакции и нормальную работу с кросс-доменными iframe.
Проклятие абстракции
Playwright скрывает важные детали, вносит лишнюю задержку через WebSocket-прокси и не нужен для узких задач AI-агентов. Мы решили реализовать только нужные вызовы сами.
Краткая история автоматизации браузеров
- 2011–2017: PhantomJS → Chrome Remote Debugging → WebKit RDP → CDP.
- 2017: Headless Chrome + Puppeteer.
- 2018: WebDriver стал W3C-стандартом.
- 2020: бывшие разработчики Puppeteer создали Playwright.
- 2023–2024: WebDriver BiDi в ChromeDriver и Puppeteer.
Современные драйверы
pydoll, go-rod, chromedp, puppeteer, playwright, selenium, cypress, appium.
Но ни один не подошёл, поэтому мы написали собственный cdp-use
.