본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 05. 30. 12:24

Lazada를 대상으로 모든 웹 스크래핑 도구를 테스트했습니다 — 실제로 작동하는 것은 무엇인가 (2026년 5월)

요약

Lazada Singapore의 강력한 안티 봇 시스템을 대상으로 7가지 웹 스크래핑 도구의 성능을 직접 벤치마킹한 결과입니다. 비용 효율적인 데이터 수집을 위해 실패 시 단계적으로 도구를 전환하는 계층 구조(ladder) 전략의 중요성을 강조합니다.

핵심 포인트

  • 안티 봇 방어 체계가 있는 사이트에서는 계층적 도구 사용이 필수적임
  • Chromium 기반 도구는 reCAPTCHA 및 IP 차단에 취약할 수 있음
  • 가장 저렴하고 빠른 HTTP Fetcher부터 단계적으로 테스트할 것을 권장
  • 사이트의 보안 정책 변화에 따라 도구의 작동 여부가 달라질 수 있음

2026년의 웹 스크래핑 (Web scraping)은 엉망진창입니다. 모든 사이트에는 안티 봇 (anti-bot) 기술이 적용되어 있습니다. 모든 도구는 이를 우회할 수 있다고 주장합니다. 그리고 모든 비교 기사들은 2중 CAPTCHA 방어 체계를 갖춘 실제 운영 사이트가 아닌, 데모 페이지를 대상으로 테스트한 누군가에 의해 작성되었습니다.

그래서 제가 직접 테스트를 진행했습니다. Google reCAPTCHA와 커스텀 슬라이더 인증을 모두 던지는 Lazada Singapore를 대상으로 말이죠. 목표는 주거용 프록시 (residential proxies) 없이 4GB VPS를 사용하여 3개 페이지에 걸쳐 가장 저렴한 Nintendo Switch 2 콘솔을 찾는 것이었습니다.

60회 이상의 테스트 실행, 7개의 도구, 그리고 정직한 벤치마킹 (benchmarking)을 통해 밝혀진 결과는 다음과 같습니다.

후보군 (The Contenders)

도구엔진스텔스 (Stealth)비용
Scrapling FetcherHTTP (curl_cffi)없음무료
...

속도 테스트 (The Speed Test)

Lazada를 건드리기 전에

1. HTTP Fetcher (0.77s)         ← 항상 여기서부터 시작하세요
   ↓ 페이지가 비어 있거나 JS-렌더링(JS-rendered) 방식인가요?
2. Browser Fetcher (3.66s)      ← Chromium, JS 실행
...

각 단계(tier)는 시간이나 비용 측면에서 더 많은 비용을 소모합니다. 반드시 필요하다고 증명되었을 때만 단계를 높이세요.

Lazada 테스트

Lazada SG(싱가포르)가 실제 시험장이었습니다. 이전 테스트(2026년 5월 초)에서는 Lightpanda의 Zig 기반 브라우저만이 3개 페이지 모두를 통과했습니다. 모든 Chromium 기반 도구들은 reCAPTCHA에 걸리거나 IP 차단(IP-banned)을 당했습니다.

이번에는 계층 구조(ladder)를 적용하여 다음과 같이 진행했습니다:

우선순위도구페이지 1페이지 2페이지 3시간
1HTTP Fetcher❌ 비어 있음0.77s
...
계층 구조는 설계된 대로 정확하게 작동했습니다:
  • 우선순위 1은 올바르게 실패했습니다 (Lazada는 JS-렌더링(JS-rendered) 방식이며, 원시 HTML(raw HTML)은 비어 있습니다).
  • 우선순위 3은 각 페이지당 약 3초 만에 3개 페이지 모두에서 성공했습니다 — IP 차단 없음.
  • 우선순위 5는 필요하지 않았지만 테스트를 진행했습니다: 작동은 하지만 11배 더 느립니다.

이 시스템 덕분에 Chromium이 완벽하게 처리할 수 있는 상황에서 곧바로 Camoufox(42초)나 Firecrawl(크레딧 소모)로 넘어가는 상황을 피할 수 있었습니다.

5월 이후 무엇이 변했는가?

5월 테스트에서는 Scrapling의 StealthyFetcher가 3페이지에서 IP 차단을 당했습니다. 하지만 이번에는 DynamicFetcher가 모든 페이지를 무사히 통과했습니다. 두 가지 가설이 있습니다:

  1. Lazada가 안티 봇(anti-bot) 탐지를 완화했다.
  2. DynamicFetcher가 StealthyFetcher보다 더 가벼운 핑거프린트(fingerprint)를 제시한다.

어느 쪽이든 교훈은 명확합니다: 매번 저렴한 옵션을 먼저 테스트하세요. 사이트의 동작 방식은 변합니다. 어제 차단되었던 도구가 오늘 작동할 수도 있고, 어제 작동하던 도구가 내일 차단될 수도 있습니다. 실패 시 단계를 높이는 계층 구조(ladder)는 이를 자동으로 처리해 줍니다.

반전: Camoufox

저는 Camoufox가 피해야 할 메모리 괴물(memory hog)이라고 생각하며 이 조사를 시작했습니다. 하지만 조사를 마칠 때쯤 저는 그것을 설치하고 통합해 두었습니다. 아무도 말해주지 않는 사실은 다음과 같습니다:

  • 불필요한 기능이 제거된 Firefox 포크 (fork) — 텔레메트리 (telemetry) 제거, Mozilla 서비스 삭제
  • 스텔스 (Stealth) 기능이 JavaScript 패칭이 아닌 C++ 레벨에서 작동. navigator.webdriver가 실제로 존재하지 않음
  • 헤드리스 (headless) 상태에서 RAM 81MB 사용 — Chromium의 180MB보다 가벼움
  • 하지만 느림: Chromium의 3.66초 대비 평균 8.84초
  • Firefox 지문 (fingerprint)을 제시하여, Chromium을 특정하여 타겟팅하는 사이트들을 우회함

주의사항: Scrapling의 StealthyFetcher는 patchright (Playwright의 Chromium 포크)를 사용하며 Camoufox를 자동으로 감지하지 않습니다. Playwright의 Firefox 지원 방식이 Chromium 지원 방식과 다르기 때문에 브라우저 레벨에서 통합되지는 않습니다.

하지만 HTML 레벨에서는 완벽하게 통합됩니다: Camoufox가 탐지되지 않은 상태로 페이지를 가져오면(fetch) → Scrapling의 Selector가 CSS/XPath 및 적응형 요소 추적 (adaptive element tracking)을 통해 이를 파싱(parse)합니다. 두 방식의 장점을 모두 갖춘 셈입니다.

전체 스택 (2026년 5월)

우선순위 1:  HTTP Fetcher                0.77s   $0      정적 페이지 (Static pages)
우선순위 3:  Browser Fetcher              3.66s   $0      JS 렌더링 (JS-rendered)
우선순위 4:  Stealth Fetcher              ~4s     $0      안티 봇 (Anti-bot)
...

전체 시스템은 단일 4GB VPS에서 실행됩니다. 하나의 브라우저 세션 사용 시 피크 메모리(Peak memory): AI 에이전트 게이트웨이 (AI agent gateway)를 포함하여 약 800MB입니다. 총 비용: $0 (VPS 비용 제외).

핵심 요약

  1. 벤치마크를 믿지 마세요. Camoufox가 "메모리를 과도하게 점유한다"는 이야기는 틀렸습니다. Lazada에서 "Chromium이 차단된다"는 이야기는 시대에 뒤떨어진 정보였습니다. 모든 것을 직접 측정하세요.

  2. 가장 저렴한 도구는 사용하지 않는 도구입니다. HTTP에서 시작하여 강제되는 경우에만 단계를 높이는 우선순위 사다리 (priority ladder) 방식을 사용하면 모든 스크래핑 작업에서 시간을 절약할 수 있습니다.

  3. 속도 차이는 복리로 작용합니다. 페이지 하나당 0.77초 대 8.84초는 엄청나게 크게 들리지 않을 수 있습니다. 10페이지를 스크래핑하면 7.7초 대 88초가 됩니다. 100페이지를 스크래핑하면 "자동화"와 "왜 아직도 실행 중이지"의 차이가 됩니다.

  4. 지문 다양성 (Fingerprint diversity)이 중요합니다. 무기고에 Chromium과 Firefox를 모두 갖추고 있다는 것은 둘 중 하나를 타겟팅하는 사이트를 우회할 수 있음을 의미합니다. Camoufox는 느리지만 완전히 다른 형태를 가집니다.

  5. 당신의 스택은 도구 상자가 아니라 사다리여야 합니다. 서로 단계적으로 격상되지 않는 도구들은 당신을 추측하게 만듭니다. 사다리는 당신에게 프로토콜 (protocol)을 제공합니다.

질문이 있으신가요? X에서 저를 찾아주세요 @mariatanbobo

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
1

댓글

0