Claude Code에게 경쟁사 가격 페이지를 조사하라고 요청한다고 해봅시다. Claude Code는 웹을 검색한 뒤 다음과 같은 스니펫만 돌려줍니다. “월 29달러부터 시작.” 이것만으로는 부족합니다. 전체 가격표, 기능 비교, 엔터프라이즈 요금제, 즉 실제 페이지 내용이 필요합니다.
웹 검색은 요약을 제공합니다. 웹 크롤링은 페이지 전체를 제공합니다.
이 글에서는 Claude Code에 웹 크롤링을 추가하는 방법을 소개합니다. 그러면 에이전트가 전체 웹페이지를 읽고, 구조화된 데이터를 추출하고, 그 리서치를 워크플로에 바로 반영할 수 있습니다.
웹 검색 vs 웹 크롤: 무엇이 다른가?
둘은 관련은 있지만 역할이 다릅니다.
| 웹 검색 | 웹 크롤 | |
|---|---|---|
| 반환 결과 | 스니펫, 링크, 인용 | 깔끔한 마크다운 형식의 전체 페이지 내용 |
| 적합한 용도 | 빠른 답변, 탐색, 사실 확인 | 심층 리서치, 콘텐츠 추출, 경쟁사 분석 |
| 속도 | 몇 초 | 몇 초에서 1분 정도(전체 페이지 가져오기) |
| 데이터 깊이 | 표면 수준 | 완전함 — 모든 제목, 문단, 표 |
| 사용 사례 | “X의 가격은 얼마인가요?” | “가격 페이지 전체를 추출해서 우리 가격과 비교해줘” |
에이전트에는 둘 다 필요합니다. 검색으로 올바른 페이지를 찾고, 크롤로 제대로 읽어야 합니다.
Claude Code에 웹 크롤이 필요한 이유
Claude Code는 코드베이스를 추론하는 데 강합니다. 함수 리팩터링, 테스트 작성, 여러 파일에 걸친 디버깅이 가능합니다. 하지만 경쟁사 API 문서, 라이브러리 변경 로그, 제품 기능 목록 같은 것을 조사해야 할 때는 한계에 부딪힙니다.
웹 검색은 도움이 되지만 스니펫만으로는 부족합니다. 가격 페이지에는 12개 요금제가 있을 수 있고, 문서 페이지에는 40개 섹션이 있을 수 있으며, 변경 로그는 3년에 걸친 릴리스를 담고 있을 수 있습니다. 150자짜리 스니펫은 한 가지만 알려줍니다. 전체 페이지는 모든 것을 알려줍니다.
웹 크롤은 에이전트에게 완전한 페이지를 제공합니다. 그러면 에이전트는 다음을 할 수 있습니다.
- 구조화된 데이터 추출(요금제, 기능 목록, API 엔드포인트)
- 경쟁사 상품을 항목별로 비교
- 문서를 코드 생성에 반영(“문서에 설명된 대로 인증을 정확히 구현해줘”)
- 시간에 따른 변경 사항 모니터링(같은 페이지를 매주 크롤하고 결과 비교)
방법 1: 수동 웹 스크래핑(취약한 방식)
Claude Code가 직접 스크래핑 서비스를 호출하도록 설정할 수 있습니다. 공급자를 하나 고르고(Firecrawl, Jina, ScrapingBee), 가입한 뒤 API 키를 받아 에이전트에 연결하면 됩니다.
수동 방식의 흐름은 다음과 같습니다.
- 스크래핑 서비스에 가입한다
- API 키를 받는다
- Claude Code가 호출할 수 있는 셸 스크립트나 MCP 구성을 작성한다
- 레이트 리밋, 재시도, 실패한 가져오기를 처리한다
- 응답을 파싱해서 에이전트 컨텍스트에 다시 넣는다
이 방식은 가끔 쓰기에는 괜찮습니다. 하지만 규모가 커지면 문제가 생깁니다. 웹사이트마다 차단하는 스크래퍼가 다르고, 레이트 리밋은 공급자마다 다르며, 통합 유지보수에 빼앗기는 시간이 개발에 쓰고 싶던 시간입니다.
방법 2: 크롤링용 MCP 서버
웹 크롤링용 MCP 서버는 스크래핑 로직을 재사용 가능한 통합으로 묶어줍니다. Firecrawl의 MCP 서버가 가장 흔합니다. Claude Code가 이를 호출하면 어떤 URL이든 깔끔한 마크다운이 반환됩니다.
수동 API 연결보다 설정은 가볍지만, 여전히 관리해야 할 것이 있습니다.
- 기능마다 별도의 MCP 서버 필요(크롤링과 검색 분리)
- 공급자별 레이트 리밋과 인증
- 스크래핑 공급자를 바꿀 때 생기는 형식 불일치
방법 3: 검색 + 크롤을 위한 하나의 CLI(AnyCap 방식)
이 방식은 검색과 크롤링을 하나의 명령 체계로 묶습니다. 에이전트는 페이지를 찾기 위해 검색하고, 이후 완전히 읽기 위해 크롤합니다. 모두 같은 CLI로 처리됩니다.
# 1단계: 관련 페이지 검색
anycap search --prompt "competitor pricing pages SaaS 2026" --citations
# 2단계: 가장 관련성 높은 결과를 전체 내용으로 크롤
anycap crawl --url "https://competitor.com/pricing" -o pricing.md
런타임이 다음을 처리합니다.
- 구조화된 출력. 페이지가 깔끔한 마크다운으로 변환되며, 제목, 문단, 표, 코드 블록이 보존됩니다.
- JavaScript 렌더링. 동적 페이지(SPA, React 앱)는 추출 전에 렌더링됩니다.
- 정제된 콘텐츠. 내비게이션, 광고, 보일러플레이트를 제거합니다. 남는 것은 본문입니다.
- 일관된 형식. 크롤된 모든 페이지는 출처와 상관없이 같은 마크다운 구조를 반환합니다.
설치:
npm i -g anycap
anycap login
anycap skill install --target ~/.claude/skills/anycap-cli/
→ AnyCap 무료 설치 — 신규 사용자 250 크레딧
실제 사용 사례: 경쟁사 리서치 파이프라인
에이전트가 우리 제품의 가격을 경쟁사 세 곳과 비교해야 한다고 해봅시다. 전체 워크플로는 다음과 같습니다.
# 1. 경쟁사 가격 페이지 검색
anycap search --prompt "competitor A pricing plans 2026" --citations
anycap search --prompt "competitor B pricing plans 2026" --citations
anycap search --prompt "competitor C pricing plans 2026" --citations
# 2. 각 가격 페이지를 전체 내용으로 크롤
anycap crawl --url "https://competitor-a.com/pricing" -o competitor-a.md
anycap crawl --url "https://competitor-b.com/pricing" -o competitor-b.md
anycap crawl --url "https://competitor-c.com/pricing" -o competitor-c.md
# 3. 크롤된 콘텐츠를 Claude Code에 넣어 분석
# 이제 Claude Code는 전체 가격 데이터를 가지고 다음을 만들 수 있음:
# - 비교표
# - 가격 포지셔닝 권고
# - 기능 격차 분석
에이전트가 조사하고, 크롤하고, 분석하고, 추천까지 했습니다. 모두 한 세션 안에서 끝납니다. 브라우저 탭을 수동으로 열 필요도, 복사 붙여넣기도 필요 없습니다.
실제 사용 사례: 문서 기반 개발
에이전트가 API 통합을 구현해야 한다고 해봅시다. 인증 흐름을 추측하는 대신 공식 문서를 크롤합니다.
# API 인증 문서 크롤
anycap crawl --url "https://api.provider.com/docs/auth" -o auth-docs.md
# 엔드포인트 레퍼런스 크롤
anycap crawl --url "https://api.provider.com/docs/endpoints" -o endpoints.md
# 이제 Claude Code는 오래됐을 수 있는 학습 데이터가 아니라
# 실제 문서를 바탕으로 통합을 구현함
이것이 “Claude Code, Stripe 통합을 구현해줘”(학습 데이터에 의존하며 오래됐을 수 있음)와 “Claude Code, 최신 Stripe 문서를 크롤해서 설명된 그대로 통합을 구현해줘”(정확하고 최신이며 신뢰할 수 있음)의 차이입니다.
실제 사용 사례: 경쟁 모니터링
반복적인 리서치 워크플로를 설정합니다. 에이전트가 일정에 맞춰 경쟁사 페이지를 크롤하고 결과를 비교합니다.
# 경쟁사 변경 로그 크롤
anycap crawl --url "https://competitor.com/changelog" -o competitor-changelog-$(date +%Y%m%d).md
# 경쟁사 기능 페이지 크롤
anycap crawl --url "https://competitor.com/features" -o competitor-features-$(date +%Y%m%d).md
# 지난주 크롤과 비교
diff competitor-features-20260511.md competitor-features-20260518.md
이 작업을 매주 실행하세요. 에이전트가 새 기능, 변경된 가격, 업데이트된 메시징을 먼저 포착합니다. 고객에게서 듣기 전에 말이죠.
검색 + 크롤: 완전한 리서치 스택
웹 검색은 찾고, 웹 크롤은 읽습니다. 둘을 합치면 에이전트에게 완전한 리서치 기능이 생깁니다.
| 단계 | 명령 | 하는 일 |
|---|---|---|
| 1. 발견 | anycap search |
근거 있는 인용과 함께 관련 페이지를 찾음 |
| 2. 추출 | anycap crawl |
전체 페이지 내용을 깔끔한 마크다운으로 가져옴 |
| 3. 분석 | Claude Code | 추출된 콘텐츠를 바탕으로 추론함 |
| 4. 실행 | Claude Code | 결과를 바탕으로 구현, 비교, 보고를 수행함 |
이것이 바로 근거 기반 리서치입니다. 에이전트는 학습 데이터나 불완전한 스니펫에 의존하지 않습니다. 중요한 페이지의 실제 최신 콘텐츠로 작업합니다.
언제 크롤하고 언제 검색할까?
| 검색을 사용할 때... | 크롤을 사용할 때... |
|---|---|
| 빠른 답변이 필요할 때 | 전체 페이지가 필요할 때 |
| 어떤 페이지가 있는지 찾고 있을 때 | 필요한 페이지를 이미 알고 있고 전체가 필요할 때 |
| 인용이 포함된, 근거 있는 요약이 필요할 때 | 구조화된 데이터 추출이 필요할 때 |
| 속도가 우선일 때 | 깊이가 우선일 때 |
| 답이 스니펫에 들어갈 때 | 답이 표, 목록, 여러 섹션에 걸쳐 있을 때 |
대부분의 리서치 워크플로는 둘 다 사용합니다. 찾을 때는 검색, 추출할 때는 크롤입니다.
FAQ
웹 크롤은 JavaScript 렌더링 페이지에서도 작동하나요?
네. 런타임은 추출 전에 React, Vue, SPA 같은 동적 콘텐츠를 렌더링합니다. 브라우저에서 보이는 그대로 에이전트가 받습니다.
웹 크롤은 Claude Code의 기본 웹 검색과 어떻게 다른가요?
Claude Code의 기본 웹 검색은 스니펫과 요약을 반환합니다. 웹 크롤은 모든 제목, 문단, 표, 코드 블록이 포함된 전체 페이지를 마크다운으로 반환합니다. 빠른 답변은 검색을, 깊이가 필요할 때는 크롤을 사용하세요.
한 세션에서 여러 페이지를 크롤할 수 있나요?
네. URL마다 anycap crawl을 한 번씩 실행하면 됩니다. 에이전트는 URL 목록을 순회하며 순차적으로 크롤할 수 있습니다. 모든 결과는 로컬 마크다운 파일로 저장됩니다.
페이지가 크롤러를 차단하면 어떻게 되나요?
일부 페이지는 자동 접근을 차단합니다. 런타임은 robots.txt를 준수하고 접근 제한을 자연스럽게 처리합니다. 페이지를 크롤할 수 없으면 에이전트는 조용히 실패하지 않고 명확한 오류 메시지를 받습니다.
Cursor와 Codex에서도 되나요?
네. anycap crawl은 같은 CLI를 사용하며 Claude Code, Cursor, Codex에서 모두 작동합니다. 한 번 설치하면 모든 에이전트가 사용할 수 있습니다.
핵심 정리
웹 검색은 에이전트에게 무엇이 존재하는지 알려줍니다. 웹 크롤은 그것을 읽게 해줍니다. 경쟁사 리서치, 문서 기반 개발, 콘텐츠 추출에는 검색만으로는 부족합니다.
에이전트에게 둘 다 주세요. 찾기 위해 검색하고, 이해하기 위해 크롤하세요.
→ Claude Code에 전체 웹 접근 권한 주기 — 하나의 CLI로 검색 + 크롤
📖 다음에 읽을 글
- AI 에이전트에 웹 검색 기능을 주는 방법 — 하나의 CLI 명령 — 이 크롤 가이드의 웹 검색 버전입니다.
- AI 에이전트로 경쟁사 모니터링하기 — 경쟁사를 자동으로 감시하는 크론 작업을 만드세요.
- AI 에이전트를 위한 AI 기반 검색: 근거 기반 검색 vs 전통적 RAG — 근거 기반 검색과 벡터 검색을 언제 써야 하는지 설명합니다.
관련 글
- Claude Code로 비디오를 생성하는 방법: 2026 완전 가이드 — 기능은 계속 쌓여 갑니다.
- Capability Runtime이란? — 검색, 크롤, 이미지, 비디오, 저장소를 하나의 CLI로 묶는 인프라입니다.
AnyCap 팀이 작성했습니다. 우리는 에이전트에게 인용이 포함된 웹 검색, 전체 페이지 크롤링, 그리고 당신 없이도 리서치에 필요한 모든 것을 제공하는 capability runtime을 만듭니다.