# task-570.1: Scrapling 심층분석 + 크롤링 스킬 고도화 방안

## 목표
https://github.com/D4Vinci/Scrapling 라이브러리를 심층 분석하여, 우리 시스템의 크롤링 기능을 고도화할 수 있는 부분을 도출한다.

## 배경
- 제이회장님이 곧 크롤링 기능이 필요한 프로젝트를 진행할 예정
- 현재 Claude Code의 WebFetch/Playwright 기반 크롤링은 기본 수준
- Scrapling이 제공하는 고급 기능 중 우리 시스템에 도입 가능한 부분을 파악하여 스킬로 만들 준비

## 분석 범위

### 1. Scrapling 전체 구조 분석
- GitHub 레포 클론 후 소스코드 직접 분석 (README만 보지 말 것)
- 핵심 모듈/클래스/함수 구조 파악
- 의존성 및 아키텍처

### 2. 핵심 기능 심층 분석
- **Adaptor 시스템**: Fetcher/StealthyFetcher/PlayWrightFetcher 차이
- **자동 매칭**: 웹페이지 구조 변경 시에도 요소를 찾아내는 스마트 매칭
- **안티봇 우회**: Cloudflare/WAF 우회 기법
- **성능 최적화**: lxml 기반 파싱 vs BeautifulSoup 벤치마크
- **자동 재시도/프록시**: 실패 시 재시도 전략
- **스토리지/캐싱**: 이전 크롤링 결과 저장 및 비교

### 3. 우리 시스템 대비 분석
현재 우리가 가진 크롤링 도구:
- `scripts/browser.py` (Playwright + Chromium 기반)
- Claude Code 내장 `WebFetch` tool
- 향후 InsuWiki, 보험 데이터 크롤링에 활용 예정

비교 항목:
- Scrapling이 우리 browser.py보다 뛰어난 점
- WebFetch 대비 장점
- 우리 시스템에 없지만 Scrapling에 있는 기능
- 도입하면 안 되는 기능 (과도한 의존성, 보안 리스크 등)

### 4. 도입 가능 목록 (중요!)
- Top N이 아니라 **전체 도입가능 목록**을 작성할 것
- 각 항목별: 기능 설명, 도입 난이도, 예상 효과, 구현 방향
- 스킬로 만들 수 있는 부분 식별

### 5. 스킬 고도화 설계
- 기존 browser.py 확장 or 새 스크립트 필요 여부
- Scrapling 직접 사용 vs 핵심 기법만 차용
- 크롤링 스킬(SKILL.md) 초안 작성

## 산출물
1. **분석 보고서**: `memory/research/scrapling-analysis.md`
   - 전체 도입가능 목록 (Top N 아닌 전량)
   - 비교 분석표
   - 스킬 고도화 로드맵
2. **완료 보고서**: `memory/reports/task-570.1.md`

## 작업 레벨
- Lv.2 (리서치 + 분석 + 설계)

## 주의사항
- README만 읽고 분석하지 말 것. **소스코드를 직접** 읽을 것
- GitHub에서 소스를 가져와서 분석 (git clone 또는 gh api)
- 실제 설치/실행 테스트는 불필요 (분석만)
- 보안 리스크가 있는 기법은 명시적으로 경고 표시