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 – Fast, Scalable Web & SERP Crawling with LLM‑Ready Extraction
What it is – AnyCrawl is an open‑source toolkit (Node.js + TypeScript) for high‑performance web crawling, site‑wide scraping, and search‑engine result (SERP) fetching. It ships with multi‑threaded / multi‑process workers, built‑in caching, and optional LLM‑powered JSON extraction, making it a ready‑made back‑end for AI agents that need up‑to‑date web data.
Key capabilities
- SERP crawling – query Google (and other engines in the future) and retrieve structured results in batches.
- Web scraping – fetch a single page with three engine choices:
cheerio(static HTML, fastest)playwright(headless Chromium with modern JS rendering)puppeteer(Chrome‑based rendering)
- Site crawling – start from a root URL and traverse links with depth, limit, and scope controls (
same‑domain,same‑hostname, etc.). - Batch jobs – submit many URLs at once, get a job ID, poll for status, and retrieve paginated results.
- LLM extraction – supply a JSON schema; AnyCrawl calls an OpenAI‑compatible LLM (e.g., Atlas Cloud) to turn raw page content into structured JSON.
- Scalability – uses multi‑threading, multi‑processing, Redis‑backed queues, and Docker‑ready images for horizontal scaling.
- Proxy support – per‑request or global proxy configuration; default high‑quality residential proxies are advertised via sponsors.
- Cache layer – optional local, S3, or Redis cache to avoid re‑downloading unchanged pages.
Typical workflow
- Self‑host (or use the public API at
https://api.anycrawl.dev). - Generate an API key (
pnpm --filter api key:generate). - Call the appropriate endpoint (
/v1/scrape,/v1/crawl,/v1/search, or/v1/batch/scrape) with JSON payload describing URL, engine, limits, and optionaljson_optionsfor LLM extraction. - Receive JSON response containing raw HTML/text, optional extracted fields, and metadata (status, cache info, etc.).
Getting started
- Docs: https://docs.anycrawl.dev
- Playground: https://anycrawl.dev/playground (interactive API tester).
- Docker:
docker compose upthen generate a key inside the container (docker compose exec api pnpm --filter api key:generate). - CLI: The repository provides
pnpmscripts for key generation and testing.
Who might use it
- AI agents that need fresh web content (e.g., retrieval‑augmented generation pipelines).
- Data‑science teams building training datasets from the web.
- SEO / market‑research tools that scrape SERP results.
- Automation platforms that require reliable, scalable scraping with optional LLM‑based structuring.
License – MIT (permissive, commercial‑friendly).
Built by the Any4AI team to power the AI ecosystem with reliable, easy‑to‑integrate crawling services.
Related
- Project
- Project
- Project
- Project
- Project