AnyCrawl

一键爬取网页和搜索引擎,直接输出 LLM 可用的结构化数据

AnyCrawl 是一个基于 Node.js/TypeScript 的开源爬虫工具,主要解决将网站内容转化为大语言模型(LLM)可用的结构化数据,以及从 Google、Bing、百度等搜索引擎提取结构化搜索结果(SERP)的问题。它原生支持多线程,适合批量处理大量网页。核心能力包括:灵活的爬取规则配置、数据清洗与格式化输出(如 JSON)、对多种搜索引擎的结果解析、以及高并发下的性能优化。通过简单的 API 或配置,开发者可以快速构建数据管道,为 AI 应用提供高质量的训练数据或实时信息源。

开源 free 搜索知识
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 3461
维护状态 活跃
是否开源 是
定价模式 free

项目数据

分类搜索知识
开发团队any4ai
所属国家
定价模式free
价格说明开源项目,MIT许可证,可免费使用和部署。
访问状态
是否开源是
开源协议MIT
主要语言TypeScript
技术栈/模型ai-scraping,aitools,crawl,data,html-to-markdown,rag,scrape,scraping,serp,webscraper
GitHub 星标★ 3461
30天Star增速
HF 下载量
上线时间2025-03-31 00:00:00
最近更新2026-09-23 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数1

使用教程

难度:进阶 约 10 分钟 部署方式:Docker 6 步

环境要求

  • Docker 与 Docker Compose(README 以 Docker 方式运行 AnyCrawl)
  • Node.js 20 或更高版本(CloakBrowser 浏览器运行时要求)
  • 一个稳定可写的目录用于浏览器缓存(CLOAKBROWSER_CACHE_DIR)
  • 自建服务时需要一个可访问的 API 服务地址(示例中的 https://api.anycrawl.dev 需替换)

安装与启动步骤

  1. 1查阅官方文档

    README 的 Quick Start 只指向官方文档,完整安装与部署说明需在文档站查看,切勿凭猜测执行安装命令。

  2. 2生成 API 密钥

    在 Docker Compose 部署下进入 api 服务容器生成密钥,执行前需确保 compose 服务已运行。

    docker compose exec api pnpm --filter api key:generate
  3. 3生成默认密钥

    追加 -- default 生成默认密钥,与上一条配合使用,用于初始化可用的访问凭据。

    docker compose exec api pnpm --filter api key:generate -- default
  4. 4单容器生成密钥

    非 Compose 的单容器部署使用 docker exec,需先把 换成实际容器名或 ID。

    docker exec -it  pnpm --filter api key:generate
    docker exec -it  pnpm --filter api key:generate -- default
  5. 5配置浏览器运行时

    自建场景设置缓存目录为稳定可写路径并关闭自动更新,避免 worker 启动时下载浏览器;自行管理二进制时可指定路径。

  6. 6调用 API 验证

    到 Playground 测试 API 并生成代码,自建服务时把示例地址 https://api.anycrawl.dev 换成自己的服务地址。

关键配置

配置项必填说明示例
CLOAKBROWSER_CACHE_DIR是浏览器缓存目录,本地或自定义部署需设为稳定可写路径/your/path/cloakbrowser
CLOAKBROWSER_AUTO_UPDATE否设为 false 可避免 worker 启动时下载浏览器false
CLOAKBROWSER_BINARY_PATH否自行管理浏览器二进制时指定其路径/your/path/browser
ANYCRAWL_BROWSER_GEOIP否默认 true,通过所选代理解析时区与语言,失败则启动失败true
ANYCRAWL_BROWSER_TIMEZONE否已知地区时直接指定时区,可省去 GeoIP 查询Asia/Shanghai
ANYCRAWL_BROWSER_LOCALE否已知地区时直接指定语言,需与 TIMEZONE 同时设置zh-CN

如何确认成功

密钥生成命令在容器内执行成功,并在 Playground 或自有服务地址上成功调用 API 即表示可用。

常见问题

Q:自建服务时 API 地址怎么填?

A:把示例中的 https://api.anycrawl.dev 替换为你自己的服务器 URL,其余参数不变。

Q:可以把 engine 传成 cloakbrowser 吗?

A:不可以。公开的 scrape 与 crawl 引擎值仍为 cheerio、playwright 和 puppeteer,playwright 与 puppeteer 默认经 CloakBrowser 启动。

Q:GeoIP 数据库需要手动下载吗?

A:不需要。GeoIP 依赖已安装,其数据库约 70 MB 会在首次使用时下载并缓存。

Q:浏览器启动为什么会失败?

A:开启 GeoIP 时解析失败会直接导致启动失败;已知地区可同时设置 ANYCRAWL_BROWSER_TIMEZONE 和 ANYCRAWL_BROWSER_LOCALE,或设 ANYCRAWL_BROWSER_GEOIP=false 关闭。

注意事项

  • API 与 worker 部署应使用相同的浏览器区域设置。
  • 请使用粘性或地区稳定的代理:固定代理 URL 不保证固定出口,且已运行浏览器的进程级时区无法再改变。
  • 浏览器进程仅在代理 URL 相同时复用,页面上下文默认相互隔离。
  • 上述 Docker 密钥命令针对容器内环境,README 未提供本地源码安装步骤,如需本地部署请以官方文档为准。

核心亮点

  • 原生多线程,批量爬取效率高,适合大规模数据处理
  • 内置 Google/Bing/Baidu 等主流搜索引擎的 SERP 解析,开箱即用
  • 输出格式直接面向 LLM,减少数据清洗工作量

不足之处

  • 文档/社区待观察
  • 依赖 Node.js 生态,对非 JS 开发者有一定门槛

适用场景

  • 构建知识库或训练数据集,需要从网站抓取文本内容
  • 监控搜索引擎排名或收集搜索结果用于 SEO 分析
  • 为 AI 对话系统提供实时网页信息检索能力

替代项目

Scrapy、Playwright、Apify

项目介绍

AnyCrawl 是搜索知识领域的开源项目,由 any4ai 开发,2025 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(3,461)位列前 30%,在搜索知识分类的 581 个项目里位列前 14%。

近 42 天,它的 GitHub 星标从 3,412 增加到 3,461,净增 49。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-23。MIT许可证,可免费使用和部署。

它主要面向的使用场景是:构建知识库或训练数据集,需要从网站抓取文本内容。同类可对比的替代方案包括 Scrapy、Playwright、Apify。

上一篇:dataherald

下一篇:OpenKB

同类项目推荐

firecrawl 开源

网页抓取像喝水一样简单,开发者省下整周加班

The web data API to search, scrape, and interact at scale.

★ 183325 2026-08-09
contoso-chat 开源

一键跑通 Azure RAG 应用,从代码到评估部署全流程

This sample has the full End2End process of creating RAG application with Prompty an···

★ 766 2026-08-09
graphify 开源

整个代码库画成一张图,找问题一眼定位

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable k···

★ 120493 2026-08-09
ragflow 开源

让大模型用上你的私有知识,搭建可靠的企业级RAG应用

RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fu···

★ 91170 2026-08-09