Scrapling — 적응형 동적 웹 스크레이핑 프레임워크

웹사이트 구조 변경에 자동 적응하는 적응형 웹 스크레이핑 프레임워크. Cloudflare Turnstile 우회, 동적 페이지 처리, Spider 프레임워크, MCP 서버 제공.

개요

Scrapling은 AI 에이전트를 위한 적응형 웹 스크레이핑 프레임워크. 웹사이트가 업데이트되어도 파서가 자동으로 엘리먼트를 재탐색하므로 스크래핑 코드를 매번 수정할 필요가 없다. Playwright 기반 동적 페이지 처리, Cloudflare 등 anti-bot 시스템 우회, Spider 기반 대규모 크롤링까지 하나의 라이브러리로 제공한다.

38K+ GitHub 스타, Python (99.9%), BSD-3-Clause 라이선스, v0.4.7 (2026-04-17).

주요 기능

적응형 파싱 (Adaptive Parsing)

# auto_save=True: 웹사이트 구조 변경 시 자동으로 엘리먼트 재탐색
products = p.css('.product', auto_save=True)
 
# adaptive=True: 나중에 웹사이트 구조가 바뀌면 자동으로 찾아줌
products = p.css('.product', adaptive=True)

Fetcher — Anti-Bot 우회

from scrapling.fetchers import StealthyFetcher
 
StealthyFetcher.adaptive = True
p = StealthyFetcher.fetch(
    'https://example.com',
    headless=True,
    network_idle=True  # Cloudflare Turnstile 우회 기본 지원
)

Fetcher 종류: Fetcher (기본), AsyncFetcher (비동기), StealthyFetcher (안티디텍션), DynamicFetcher (동적 페이지)

Spider — 대규모 크롤링

from scrapling.spiders import Spider, Response
 
class MySpider(Spider):
    name = "demo"
    start_urls = ["https://example.com/"]
 
    async def parse(self, response: Response):
        for item in response.css('.product'):
            yield {"title": item.css('h2::text').get()}
 
MySpider().start()

Spider 기능: Scrapy 유사 API, 동시성 크롤링, Pause/Resume, 자동 프록시 로테이션

프록시 로테이션

  • 자동 프록시 전환, Residential/ISP 프록시 지원
  • 기업용: Akamai, DataDome, Kasada, Incapsula 토큰 생성 API

CLI & MCP 서버

  • CLI — 터미널에서 바로 사용
  • MCP 서버 — Claude Code 등 AI 에이전트와 직접 연동

선택 방법

CSS, XPath, Playwright 선택자 모두 지원:

p.css('.product')        # CSS 선택자
p.xpath('//div[@id]')    # XPath
p.playwright('text=Buy') # Playwright 텍스트

관련 도구

출처