seleniumbase/SeleniumBase
Browser automation, web scraping, and testing. CDP Mode provides a Stealthy Chromium instance that bypasses bot-detection systems. Includes an MCP server.
해결하는 문제
SeleniumBase는 웹 크롤링, 스크래핑 및 엔드투엔드(E2E) 테스트를 단순화하도록 설계된 올인원 브라우저 자동화 프레임워크입니다. 원시 Selenium의 복잡성을 해결하고, 더 직관적인 API, pytest와 같은 통합 테스트 러너, 그리고 자동화 스크립트를 차단하는 보트 감지 시스템을 우회하기 위한 고급 기능을 제공합니다.
작동 방식
Selenium/WebDriver API를 기반으로 하되, 편의성을 위한 고수준 메서드 레이어를 추가합니다. 여러 가지 전문 모드를 특징으로 합니다:
- CDP 모드: Chrome DevTools Protocol을 사용하여 Chromium 기반 브라우저에서 보트 감지를 우회합니다.
- UC 모드 (Undetected-Chromium): Cloudflare와 같은 서비스의 감지를 피하도록 특별히 설계되었습니다.
- Stealthy Playwright 모드: CDP 모드의 스텔스 기능을 Playwright 라이브러리로 확장합니다.
이 프레임워크는 요소의 가시성과 상호작용성을 자동으로 처리하고, 셀렉터 유형(CSS와 XPath)을 감지하며, 브라우저 드라이버 버전을 자동으로 관리하는 내장 드라이버 매니저를 포함합니다.
대상 사용자
- QA 엔지니어:
pytest를 사용하여 신뢰할 수 있고 빠르며 쉬운 E2E UI 테스트를 생성하기 위해. - 웹 스크레이퍼: 공격적인 보트 감지를 사용하는 웹사이트에서 데이터를 추출하기 위해.
- 자동화 개발자: Python으로 Chromium 자동화에 대한 포괄적인 도구 세트가 필요한 사람들을 위해.
하이라이트
- 보트 감지 우회: 자동화를 차단하는 사이트를 탐색하기 위한 전문 모드(CDP 및 UC).
- 통합 테스트: 구조화된 테스트를 위한 전용
BaseCase클래스와 함께pytest에 대한 네이티브 지원. - 단순화된 API: 결합된 동작(예:
type()은 대기, 지우기, 입력을 한 번의 호출로 처리). - CAPTCHA 해결: 자동으로 우회되지 않는 챌린지를 처리하기 위해
sb.solve_captcha()를 포함합니다. - 멀티 브라우저 지원: Google Chrome, Chromium, Edge, Brave와 호환됩니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트