any4ai/AnyCrawl
AnyCrawl 🚀: A Node.js/TypeScript crawler that turns websites into LLM-ready data and extracts structured SERP results from Google/Bing/Baidu/etc. Native multi-threading for bulk processing.
AnyCrawl – LLM 준비된 구조화 추출 기능을 갖춘 빠르고 확장 가능한 웹 및 SERP 크롤링
무엇인가요
AnyCrawl는 고성능 웹 크롤링, 사이트 스크래핑, 검색 엔진 결과(SERP) 수집을 위한 오픈소스 툴킷(노드.js + 타입스크립트)입니다. 다중 스레드/다중 프로세스 워커, 선택적 Redis 캐시, 그리고 LLM 기반 구조화 데이터 추출(JSON 스키마)을 내장하고 있습니다. 이 서비스는 자체 호스팅이 가능하며, api.anycrawl.dev에서 공개 API를 통해도 사용할 수 있습니다.
핵심 기능
| 기능 | 세부 사항 |
|---|---|
| SERP 크롤링 | 현재 지원되는 엔진은 Google뿐이며, 페이지네이션된 결과를 가져올 수 있습니다. |
| 웹 스크래핑 | 단일 URL을 가져오며 세 가지 엔진 옵션 제공: cheerio(빠른 정적 HTML), playwright, puppeteer(완전한 자바스크립트 렌더링). |
| 사이트 크롤링 | 깊이 제한, 도메인 범위 제한된 탐색 가능하며, 제한 및 경로 필터를 사용자 정의할 수 있습니다. |
| 배치 작업 | URL 목록을 비동기로 일괄 스크래핑; 상태를 풀링하고 결과를 가져옵니다. |
| LLM 추출 | 스크래핑 요청에 json_options.schema를 첨부합니다. AnyCrawl는 페이지 내용을 OpenAI 호환 LLM(예: Atlas Cloud)에 전달하고 구조화된 JSON을 반환합니다. |
| 프록시 지원 | 요청별 proxy 매개변수 또는 전역 ANYCRAWL_PROXY_URL 사용 가능. 기본 프록시 제공, 주거용 프록시를 위한 스폰서링 링크도 제공됩니다. |
| 확장성 | 워커는 여러 스레드 또는 프로세스에서 실행 가능. Docker 이미지에는 CloakBrowser 바이너리가 사전 설치되어 있어 브라우저 재사용이 효율적입니다. |
| 캐시 | 변경되지 않은 페이지를 다시 다운로드하지 않기 위해 선택적 Redis 또는 S3 기반 캐시 지원. |
| API 우선 | 모든 기능은 REST API(/v1/scrape, /v1/crawl, /v1/search, /v1/batch/scrape)를 통해 제공됩니다. |
주요 활용 사례
- LLM 학습 또는 RAG용 데이터 수집 – 원시 웹 페이지를 수집한 후 내장된 스키마 추출 기능을 사용해 인덱싱 가능한 깨끗한 JSON을 생성합니다.
- 검색 엔진 모니터링 – 키워드 세트에 대해 Google SERP 결과를 주기적으로 가져옵니다.
- 대규모 웹 스크래핑 파이프라인 – 배치 작업과 Redis 캐시, 다중 프로세스 워커를 결합해 고처리량을 달성합니다.
- 최신 웹 콘텐츠가 필요한 AI 에이전트 – 자율 에이전트에서 API를 호출하고, 주거용 프록시를 통해 봇 차단을 피할 수 있습니다(옵션).
시작하기
- 호스팅된 API 사용하기 – AnyCrawl 대시보드에서 무료 API 키를 획득하고, 리드미 예제를 참고해 직접 엔드포인트를 호출합니다.
- 자체 호스팅하기 – 리포지토리 복제 후
docker compose up -d실행(또는 로컬에서api서비스 시작).- 키 생성:
pnpm --filter api key:generate(또는docker exec을 통해). ANYCRAWL_API_AUTH_ENABLED=true와 같은 환경 변수 설정, 프록시/Redis 설정은 선택 사항입니다.
- 키 생성:
- 간단한 스크래핑 실행하기:
curl -X POST https://api.anycrawl.dev/v1/scrape \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <YOUR_KEY>' \ -d '{"url":"https://example.com","engine":"cheerio"}' - LLM 추출 추가하기 – 요청 본문에
json_options.schema포함; 환경 변수(DEFAULT_LLM_MODEL,ATLASCLOUD_API_KEY)를 통해 OpenAI 호환 제공자(예: Atlas Cloud) 설정.
문서 및 커뮤니티
- 완전한 API 참조 및 빠른 시작 가이드: https://docs.anycrawl.dev
- 인터랙티브 테스트용 플레이그라운드: https://anycrawl.dev/playground
- 기여는 환영합니다(자세한 내용은
CONTRIBUTING.md참조). - 후원자는 Open Collective에서 프로젝트를 지원할 수 있습니다.
라이선스 MIT – 허용적인 오픈소스 라이선스입니다.
결론 AnyCrawl는 LLM 워크플로우와 원활하게 통합되는, 프로덕션 수준의 크롤링/스크래핑 서비스를 제공합니다. AI 기반 데이터 파이프라인, 자율 에이전트, RAG 시스템의 실용적인 구성 요소로 적합합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트