跳转到内容

Firecrawl 项目介绍

Firecrawl 项目介绍

项目定位

Firecrawl 是一个 AI 原生的网络数据 API —— 将网页转换为 LLM 可直接使用的清洁数据(Markdown、结构化 JSON、截图等),为 AI Agent 提供实时网络上下文。

它解决的问题:AI Agent 需要实时网络数据,但传统爬虫面临反爬、JS 渲染、代理轮换、页面解析等复杂问题。Firecrawl 封装了这些复杂性,提供简单的 REST API,让 Agent 无需关心底层抓取细节。

核心能力

能力描述
Scrape(抓取)将任何 URL 转换为 Markdown、HTML、截图或结构化 JSON
Search(搜索)搜索引擎查询 + 直接返回结果页的完整内容
Crawl(爬取)单请求爬取整个网站,异步任务 + 轮询/WS 实时状态
Map(映射)即时发现网站所有 URL,支持关键词搜索过滤
Agent(代理)自主数据收集 Agent —— 描述需求,AI 自动搜索、导航、提取
Interact(交互)基于已有浏览器会话,通过自然语言指令与页面交互
Batch Scrape(批量抓取)异步批量处理数千个 URL
Parse(解析)从 PDF、DOCX 等文件中提取文本和结构化数据

技术栈

  • 后端语言:TypeScript(Node.js + Express)
  • 任务队列:BullMQ(基于 Redis)+ RabbitMQ(NUQ 新一代队列系统)
  • 数据库:PostgreSQL(持久化)+ Redis(缓存与队列)
  • 浏览器引擎:Playwright / Fire Engine(Chrome CDP)
  • AI 集成:OpenAI(JSON 提取、Agent、深度研究)
  • 可观测性:Sentry(错误追踪)、OpenTelemetry(分布式追踪)、ClickHouse(分析)
  • 部署:Docker Compose / Kubernetes(Helm)

架构概览

快速体验

本地自托管

Terminal window
# 1. 克隆仓库
git clone https://github.com/firecrawl/firecrawl.git
cd firecrawl
# 2. 启动 Docker 服务
docker compose build
docker compose up
# 3. 测试 API
curl -X POST http://localhost:3002/v2/scrape \
-H 'Content-Type: application/json' \
-d '{"url": "https://firecrawl.dev"}'

使用云端 API

Terminal window
# 获取 API Key: https://firecrawl.dev
# Python
pip install firecrawl-py
# Node.js
npm install @mendable/firecrawl-js
from firecrawl import Firecrawl
app = Firecrawl(api_key="fc-YOUR_API_KEY")
# 抓取单个页面
doc = app.scrape("https://firecrawl.dev", formats=["markdown"])
print(doc.markdown)
# 使用 Agent 自主收集数据
result = app.agent(prompt="Find the pricing plans for Notion")
print(result.data)

教程导读

本教程分为 AI 应用工程实践 两个部分:

AI 应用教程 (/ai/)

章节内容引用的 Common 教程
01Agent 端点架构与自主数据收集Agent 核心循环
02多引擎智能回退与反反爬策略
03AI 结构化提取(LLM Extract)
04MCP 集成与 Agent 技能接入MCP 协议

工程实践教程 (/dev/)

章节内容
01多租户 SaaS API 架构设计
02BullMQ + Redis 异步任务队列系统
03抓取引擎的 Feature Flag 与质量评分机制
04Monorepo 多语言 SDK 管理