🍚 깃밥 PRO가 열렸어요 — 월 3,900원 · 알아보기 →
feder-cr/invisible_playwright

Playwright용 오픈소스 안티디텍트 Firefox: 봇 탐지를 우회하고 reCAPTCHA·hCaptcha·Turnstile을 통과하는 스텔스 브라우저 자동화

🍚 착한식당깃밥이 직접 차려 먹고 검증해 선정한 레포예요해설 페이지 →
개발 재료맘대로 써도 됨 · MIT데이터·크롤링Python난이도
3,0330 찜
299포크4이슈

중간맛 분석

Python 기반 Playwright 래퍼로, 표준 Playwright 100% 호환입니다(sync/async 모두). 설치 후 from invisible_playwright import InvisiblePlaywright로 바꾸면 끝. 매번 실행할 때마다 새로운 지문(GPU, 오디오, 폰트, 화면 등 ~200개 필드)을 생성하고, 마우스를 베지에 곡선으로 움직입니다. seed 고정으로 재현 가능하고, 개별 필드 핀닝도 지원합니다. 데모: 5/5 봇 탐지 스위트 통과(GIF 확인 가능). 난이도: 2/5(Playwright 경험 있으면 즉시 도입 가능).

이런 레포예요

이럴 때 쓰면 좋아요

  • reCAPTCHA·hCaptcha·Cloudflare Turnstile 같은 봇 탐지를 우회해서 대규모 웹 스크래핑 자동화
  • Playwright를 쓰는 웹 자동화 프로젝트에서 봇으로 차단당할 때 최소 코드 변경으로 전환
  • 금융·취표·여행 예약 등 엄격한 봇 탐지 사이트 모니터링 및 데이터 수집

핵심 기능

C++ 수준 Firefox 패치로 모든 브라우저 지문 위조(navigator·GPU·WebGL·canvas·오디오·폰트 등)Playwright 100% 호환 API로 기존 코드 거의 수정 없이 도입 가능Seed 기반 Bayesian 샘플러로 재현 가능하면서도 다양한 가상 지문 생성

대안 대비 차별점

Firefox 엔진 자체를 C++ 수준에서 수정해 JS shim 없이 모든 지문을 위조하고, seed 하나로 일관된 가상 머신을 재현하는 유일한 오픈소스 방식으로, 다른 init-script나 driver 수준 패치보다 탐지 저항이 훨씬 강합니다.

먹어본 사람들

실제로 차려 먹어본 손님들의 흔적이에요 — 한마디와 완주 인증 모두 검수 후 공개돼요.

시식평 · 먹어본 사람 한마디

아직 시식평이 없어요. 먹어보셨다면 첫 한마디를 남겨주세요.

다른 레포 시식평 구경하기 →

이 레포로 만든 것들

🖋 완주 인증하기

아직 이 레포로 만든 완주 인증이 없어요. 첫 밥도장을 찍어보세요!

이 레포, 해먹는 법

처음 오셨어요? 어렵지 않아요 — 위에서 아래로 따라 하면 내 컴퓨터에 이 레포를 차려서 바로 맛볼 수 있어요.

준비물

  • Python 3.11 이상
  • pip 패키지 매니저
  • Windows x86_64 또는 Linux x86_64/arm64 또는 macOS arm64/x86_64

바로 차려먹기Python (uv)

깃밥이 레포 구조를 확인하고 만든 실행 명령이에요. 터미널에 붙여넣으면 받기부터 실행까지 한 번에 진행돼요.

git clone --depth 1 https://github.com/feder-cr/invisible_playwright.git &&
cd invisible_playwright &&
uv sync

uv가 없다면: brew install uv · 실행 명령은 README를 확인하세요.

코드는 내 컴퓨터에서 실행돼요 — 처음 보는 레포라면 내용을 한번 훑어보고 실행하는 습관을 추천해요.

README가 안내하는 자세한 단계 보기
  1. 패키지 설치 및 Firefox 엔진 다운로드
pip install invisible-playwright
python -m invisible_playwright fetch
  1. 기본 동기식 사용 예제
# 파일: example.py
from invisible_playwright import InvisiblePlaywright

with InvisiblePlaywright() as browser:
    page = browser.new_page()
    page.goto("https://example.com")
    page.click("#submit")
    print(page.title())
  1. 프록시 추가
# 파일: example_proxy.py
from invisible_playwright import InvisiblePlaywright

proxy = {
    "server": "socks5://gate.example.com:1080",
    "username": "user",
    "password": "pass",
}
with InvisiblePlaywright(proxy=proxy) as browser:
    page = browser.new_page()
    page.goto("https://example.com")
  1. 재현 가능한 지문 고정
# 파일: example_seed.py
from invisible_playwright import InvisiblePlaywright

with InvisiblePlaywright(seed=42) as browser:
    page = browser.new_page()
    page.goto("https://example.com")
    # 매번 동일한 GPU, canvas, audio 지문 생성
  1. 비동기 사용
# 파일: example_async.py
import asyncio
from invisible_playwright.async_api import InvisiblePlaywright

async def main():
    async with InvisiblePlaywright() as browser:
        page = await browser.new_page()
        await page.goto("https://example.com")
        await page.click("#submit")

asyncio.run(main())
  1. 스크립트 실행
python example.py

깃밥트라이로 맛보기

받아보기 귀찮고 살짝 불안했다면 — 안전 스캔부터 설치까지 터미널 한 줄로 끝나요.

터미널에 붙여넣으면 깃밥 안전 스캔 → 격리 폴더 clone → 설치 → 실행법 안내까지 자동이에요. 처음이어도 괜찮아요 — 이 한 줄이 전부예요.

npx gitbap-try feder-cr/invisible_playwright

Node.js만 있으면 설치 없이 실행돼요 · 깃밥트라이가 뭐예요? →

이걸로 써먹는 법

맛봤다면 이제 써먹을 차례 — 이 레포를 내 일과 사업에 응용하는 방법을 모아뒀어요.

🍳 레시피 — AI에게 이대로 시켜보세요

레시피 불러오는 중…

별 추이 · 7일

3,0337일 증가분은 비교 데이터가 부족해요

확인 시각

활용성 · 따라 만들기 좋은가

베스트 샘플샘플 점수 68/100
  • 관대한 라이선스
  • 테스트 있음
  • 예제 디렉토리
  • 최근 활동
  • AGENTS.md
  • llms.txt
  • 템플릿

🟢 최근 활동 있음 · 2026년 생성

「데이터·크롤링」 이런 레포, 매주 받아보실래요?

매주 월요일 아침, 골라 담은 밥상만. 광고 없이 · 언제든 해지.

내 레포인가요? README에 깃밥 배지 달기
[![깃밥](https://www.gitbap.com/badge/feder-cr/invisible_playwright.svg)](https://www.gitbap.com/r/feder-cr/invisible_playwright)
🔌 클로드에서 바로 써보기 — 깃밥 연결하는 법

깃밥을 클로드에 연결하면 이런 레포를 클로드·커서·Codex에서 바로 찾고 체험할 수 있어요.

방법 ① 커넥터 URL

클로드 설정 → 커넥터에 이 주소를 붙여넣기.

https://www.gitbap.com/api/mcp
방법 ② 플러그인 (체험까지)

플러그인을 설치하면 /gitbap-trending·/gitbap-try 슬래시 커맨드로 레포를 그 자리에서 체험. Claude Code에서 아래 두 줄을 차례로 실행하세요.

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
연결 방법 자세히 →

AI가 README 기반으로 요약했습니다 · 원문 보기