字节笔记本
2026年6月18日
Firecrawl 免费 AI 爬虫:开源与商用两个版本
Firecrawl 是一个功能强大的爬虫工具,提供了开源和商用两个版本。开源版本的 star 数量也很多,自身定位强调 API,强调与大模型的结合,在使用手册中都专门针对 LlamaIndex 和 LangChain 做了说明,官网版本也支持下载 md、json 这些更容易被 LLM 读懂的格式。我直接在官网试用过,体验不错,这里做简要分享。
原文作者:博金斯的AI笔记
原文发布时间:2024-06-21
商用版本
去官网商用版本不用注册也能在线爬取网站,使用门槛低。免费版可以完成简单的网页爬取,大量或复杂网页抓取则需要付费版,根据响应速度、一天爬取次数和并发数量收费。个人测试下来,免费版对简单静态网页的爬取搜索大约需要 5 秒左右,速度有点慢。
商用版本支持 search、scraping(免费版只能 scrape 一个 URL,相当于 crawl)和 crawling,以及目前处于测试版本的 LLM extract。这里我使用了搜索功能,出现 6 个相关文章,右上角可以下载全部回答为 Json 文件,再传给 ChatGPT-4 进行整理。
点击 get code 能看到这次搜索的 API 相关代码。
产品本身重视 API 服务,可以作为 AI 产品的工具或插件。说明文档有很多针对不同平台、语言(Python、LangChain、LlamaIndex)的 API 请求访问教程。
如果直接要用官方 API,不自己部署,需按照 API 收费,每个账户有 300 credits 的免费 API 额度。
curl -X POST https://api.firecrawl.dev/v0/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"url": "https://mendable.ai"
}'这里的 Mendable AI 是一个帮助自定义构建 AI 客服的平台,用户可上传相应产品文档让 AI 学习,并且侧重客户数据分析,支持 API 导出到其他平台。
开源版本
开源版本一开始部署没有登录验证和一些辅助功能,比如 PDF 解析、JS 防 block、AI 特性。
"To start, we won't set up authentication, or any optional sub services (pdf parsing, JS blocking support, AI features)."
需要安装
- Node.js
- pnpm
- Redis
设置环境变量
在 /apps/api/ 目录中的 .env 文件中设置环境变量,可以复制 .env.example 中的模板。初始设置中不会配置认证或任何可选的子服务(如 PDF 解析、JS 阻止支持、AI 功能)。
# ===== 必需的环境变量 ======
NUM_WORKERS_PER_QUEUE=8
PORT=3002
HOST=0.0.0.0
REDIS_URL=redis://localhost:6379
## 若要启用数据库认证,你需要设置 Supabase。
USE_DB_AUTHENTICATION=false
# ===== 可选的环境变量 ======
# Supabase 设置(用于支持数据库认证、高级日志记录等)
SUPABASE_ANON_TOKEN=
SUPABASE_URL=
SUPABASE_SERVICE_TOKEN=
# 其他可选项
TEST_API_KEY= # 如果你已设置认证并希望使用真实的 API 密钥进行测试
SCRAPING_BEE_API_KEY= # 如果你希望使用 scraping Bee 处理 JS 阻止
OPENAI_API_KEY= # 添加用于 LLM 依赖功能(如图像 alt 生成等)
BULL_AUTH_KEY=
LOGTAIL_KEY= # 如果你正在配置基本日志记录与 logtail
PLAYWRIGHT_MICROSERVICE_URL= # 如果你希望运行一个 playwright 备用服务
LLAMAPARSE_API_KEY= # 如果你有 llamaparse 密钥并希望用于解析 PDF
SERPER_API_KEY= # 如果你有 serper 密钥并希望作为搜索 API 使用
SLACK_WEBHOOK_URL= # 如果你希望发送 slack 服务器健康状态消息
POSTHOG_API_KEY= # 如果你希望发送 posthog 事件如作业日志
POSTHOG_HOST= # 如果你希望发送 posthog 事件如作业日志安装依赖
使用 pnpm 安装依赖:
pnpm install运行项目
需要打开 3 个终端。
终端 1 - 设置 Redis:
redis-server终端 2 - 设置 workers:
导航到 apps/api/ 目录并运行:
pnpm run workers这将启动负责处理爬取作业的 workers。
终端 3 - 设置主服务器:
导航到 apps/api/ 目录并运行:
pnpm run start发送第一个请求
curl -X GET http://localhost:3002/test这应该返回响应 "Hello, world!"。
如果希望测试爬取端点,可以运行:
curl -X POST http://localhost:3002/v0/crawl \
-H 'Content-Type: application/json' \
-d '{
"url": "https://mendable.ai"
}'测试
最好的方式是运行以下命令以在没有认证的情况下运行测试:
npm run test:local-no-auth如果希望在有认证的情况下运行测试,可以运行:
npm run test:prod