Home
Login

將整個網站轉換為 LLM 就緒的 Markdown 或結構化資料,透過單個 API 進行抓取、爬取和提取

AGPL-3.0TypeScript 40.4kmendableaifirecrawl Last Updated: 2025-06-22

Firecrawl 項目詳細介紹

項目概述

Firecrawl 是一個 API 服務,接收 URL,爬取它,並將其轉換為乾淨的 markdown 或結構化數據。它爬取所有可訪問的子頁面,為每個頁面提供乾淨的數據。無需站點地圖。

核心功能

1. 網頁抓取 (Scraping)

  • 抓取單個 URL 並獲取 LLM 就緒格式的內容
  • 支持多種輸出格式:markdown、結構化數據、截圖、HTML
  • 通過 LLM 提取獲得結構化數據

2. 網站爬取 (Crawling)

  • 爬取網頁的所有 URL 並返回 LLM 就緒格式的內容
  • 無需站點地圖即可發現所有可訪問的子頁面
  • 支持自定義爬取深度和排除規則

3. 網站映射 (Map)

  • 輸入網站獲取所有網站 URL - 極快的速度
  • 支持搜索特定 URL 模式

4. 網絡搜索 (Search)

  • 搜索網絡並從結果中獲取完整內容
  • 可自定義搜索參數(語言、國家等)
  • 可選擇從搜索結果中檢索各種格式的內容

5. 數據提取 (Extract)

  • 使用 AI 從單頁面、多頁面或整個網站獲取結構化數據
  • 支持通過提示詞和 JSON 模式定義提取規則
  • 支持通配符 URL 模式

6. 批量處理 (Batching)

  • 同時抓取數千個 URL 的新異步端點
  • 提交批量抓取作業並返回作業 ID 檢查狀態

技術特性

LLM 就緒格式

  • Markdown: 乾淨的文檔格式
  • 結構化數據: JSON 格式的提取數據
  • 截圖: 頁面視覺捕獲
  • HTML: 原始 HTML 內容
  • 鏈接和元數據: 頁面信息提取

處理複雜情況

  • 代理和反機器人機制: 繞過訪問限制
  • 動態內容: 處理 JavaScript 渲染的內容
  • 輸出解析: 智能內容解析
  • 編排: 複雜流程管理

自定義能力

  • 排除標籤: 過濾不需要的內容
  • 認證爬取: 使用自定義標頭爬取需要認證的內容
  • 最大爬取深度: 控制爬取範圍
  • 媒體解析: 支持 PDF、DOCX、圖像

交互功能 (Actions)

在抓取內容之前可以執行各種操作:

  • 點擊: 點擊頁面元素
  • 滾動: 頁面滾動操作
  • 輸入: 文本輸入
  • 等待: 等待頁面加載
  • 按鍵: 鍵盤操作

API 使用示例

爬取網站

curl -X POST https://api.firecrawl.dev/v1/crawl \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer fc-YOUR_API_KEY' \
-d '{
  "url": "https://docs.firecrawl.dev",
  "limit": 10,
  "scrapeOptions": {
    "formats": ["markdown", "html"]
  }
}'

抓取單頁面

curl -X POST https://api.firecrawl.dev/v1/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
  "url": "https://docs.firecrawl.dev",
  "formats" : ["markdown", "html"]
}'

結構化數據提取

curl -X POST https://api.firecrawl.dev/v1/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
  "url": "https://www.mendable.ai/",
  "formats": ["json"],
  "jsonOptions": {
    "schema": {
      "type": "object",
      "properties": {
        "company_mission": {"type": "string"},
        "supports_sso": {"type": "boolean"},
        "is_open_source": {"type": "boolean"},
        "is_in_yc": {"type": "boolean"}
      },
      "required": ["company_mission", "supports_sso", "is_open_source", "is_in_yc"]
    }
  }
}'

SDK 支持

Python SDK

pip install firecrawl-py
from firecrawl.firecrawl import FirecrawlApp
from firecrawl.firecrawl import ScrapeOptions

app = FirecrawlApp(api_key="fc-YOUR_API_KEY")

# 抓取網站
scrape_status = app.scrape_url(
    'https://firecrawl.dev',
    formats=["markdown", "html"]
)
print(scrape_status)

# 爬取網站
crawl_status = app.crawl_url(
    'https://firecrawl.dev',
    limit=100,
    scrape_options=ScrapeOptions(formats=["markdown", "html"]),
    poll_interval=30
)
print(crawl_status)

Node.js SDK

npm install @mendable/firecrawl-js
import FirecrawlApp, { CrawlParams, CrawlStatusResponse } from '@mendable/firecrawl-js';

const app = new FirecrawlApp({apiKey: "fc-YOUR_API_KEY"});

// 抓取網站
const scrapeResponse = await app.scrapeUrl('https://firecrawl.dev', {
  formats: ['markdown', 'html'],
});

if (scrapeResponse) {
  console.log(scrapeResponse)
}

// 爬取網站
const crawlResponse = await app.crawlUrl('https://firecrawl.dev', {
  limit: 100,
  scrapeOptions: {
    formats: ['markdown', 'html'],
  }
} satisfies CrawlParams, true, 30) satisfies CrawlStatusResponse;

集成支持

LLM 框架集成

  • Langchain: Python 和 JavaScript 版本
  • Llama Index: 數據連接器
  • Crew.ai: AI 代理框架
  • Composio: 工具集成
  • PraisonAI: AI 編排
  • Superinterface: 助手功能
  • Vectorize: 向量化集成

低代碼框架

  • Dify: AI 應用構建平台
  • Langflow: 可視化 AI 流程
  • Flowise AI: 無代碼 AI 構建
  • Cargo: 數據集成
  • Pipedream: 工作流自動化

其他集成

  • Zapier: 自動化工作流
  • Pabbly Connect: 應用集成

許可證和部署

開源許可

  • 主要採用 GNU Affero General Public License v3.0 (AGPL-3.0)
  • SDK 和部分 UI 組件採用 MIT 許可證

託管服務

  • 提供託管版本在 firecrawl.dev
  • 雲解決方案提供額外功能和企業級支持

自託管

  • 支持本地部署
  • 當前仍在開發中,集成自定義模塊到單體倉庫
  • 可以本地運行,但尚未完全準備好用於自託管部署

應用場景

  1. AI 數據準備: 為 LLM 提供乾淨的訓練數據
  2. 內容聚合: 從多個網站收集和整理內容
  3. 競爭分析: 監控競爭對手網站變化
  4. SEO 研究: 分析網站結構和內容
  5. 數據挖掘: 從網站提取結構化信息
  6. 文檔生成: 將網站內容轉換為文檔格式

使用注意事項

用戶在使用 Firecrawl 進行抓取、搜索和爬取時,有責任遵守網站的政策。建議用戶在啟動任何抓取活動之前,遵守適用網站的隱私政策和使用條款。默認情況下,Firecrawl 在爬取時會遵守網站 robots.txt 文件中指定的指令。

項目狀態

該項目目前處於活躍開發狀態,團隊正在將自定義模塊集成到單體倉庫中。雖然尚未完全準備好進行自託管部署,但可以本地運行進行開發和測試。項目擁有活躍的社區和持續的更新,是網頁數據提取領域的領先解決方案。

Star History Chart