Skyvern-AI/rustwright

Playwright's API on a Rust CDP engine — Chromium browser automation for Python & Node, no driver subprocess. (Alpha)

해결하는 문제

Rustwright는 Chromium 브라우저를 자동화하기 위한 고성능 대체 도구로, 일반적으로 실행 속도를 저하시키고 메모리 사용량을 늘리는 Node.js 드라이버 하위 프로세스가 필요 없도록 설계되었습니다. 또한 웹사이트가 봇을 감지하는 데 사용하는 '자동화 지문(automation fingerprint)'을 줄여 브라우저 자동화를 더욱 은밀하게 만들 수 있습니다.

작동 방식

Node 드라이버를 통한 명령 전달 대신, Tokio 기반의 네이티브 Rust 엔진을 사용하여 Chrome DevTools Protocol (CDP)를 통해 Chromium과 직접 통신합니다. Python과 Node.js용 얇은 바인딩을 제공하여 개발자가 익숙한 Playwright API를 사용하면서도 네이티브 Rust 코어의 이점을 누릴 수 있습니다.

대상 사용자

  • AI 에이전트 개발자: 원시 HTML이 아닌, 컴팩트한 접근성 스냅샷과 요소 참조(element references)를 사용해 웹과 상호작용해야 하는 개발자.
  • 자동화 엔지니어: 브라우저 자동화 작업에서 더 빠른 실행 속도와 낮은 메모리 오버헤드를 원하는 개발자.
  • 웹 스크래핑/자동화 전문가: 일반적인 Playwright 전용 탐지 서명을 피하고자 하는 사용자.

주요 특징

  • 성능: 로컬 진단 결과, playwright-python 대비 최대 2.55배 빠르고 메모리 사용량은 약 70% 감소.
  • 에이전트 준비 완료: 네이티브 MCP(Model Context Protocol) 서버와 에이전트용 CLI를 포함하여 요소 참조(e1, e2)로 브라우저를 제어할 수 있음.
  • 스텔스성: Playwright 고유의 드라이버 시그니처를 제거하고, 기본적으로 헤드리스 정체성을 정규화.
  • 상호 운용성: Playwright Python 동기 API의 약 96%와 호환.
  • 신뢰할 수 있는 입력: 클릭 및 타이핑의 기본 동작으로 합성 DOM 호출 대신 실제 CDP 입력 이벤트 사용.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트