unclecode/crawl4ai

🚀🤖 Crawl4AI: Open-source LLM Friendly Web Crawler & Scraper. Don't be shy, join here: https://discord.gg/jP8KfhDhyN

解決的問題

Crawl4AI 是一個專為準備大語言模型(LLMs)所需網頁內容而設計的開源網路爬蟲與網頁抓取工具。它解決了網頁資料雜亂無章、結構不清晰的問題,將網頁轉換為適合 RAG(檢索增強生成)、AI 代理與資料流程的乾淨、結構化 Markdown。

工作原理

該工具使用非同步瀏覽器池(透過 Playwright)取得網頁,並應用多種處理策略:

  • Markdown 產生:使用基於啟發式的過濾(如 BM25 算法)去除雜訊,產生聚焦核心資訊的「適配 Markdown」。
  • 結構化提取:支援基於 LLM 的複雜資料提取,也支援基於 CSS/XPath 的快速、結構化 JSON 輸出。
  • 瀏覽器控制:管理瀏覽器會話、代理與 Cookie,並可執行自訂 JavaScript 以處理動態內容或無限捲動。
  • 部署方式:可作為 Python 套件、CLI 工具,或以 Docker 化的 FastAPI 伺服器形式執行,附帶監控儀表板。

適用對象

  • AI 開發者:建構 RAG 系統或 AI 代理,需要高品質、乾淨的網頁資料作為輸入。
  • 資料工程師:需要一種可擴展、可控制的方式從網頁中提取結構化資料,且不被反爬蟲機制攔截。
  • LLM 應用建構者:希望將網頁轉換為機器可讀格式,而無需支付專有爬蟲 API 的費用。

核心亮點

  • LLM 就緒輸出:產生包含標題、表格與引用提示的結構化 Markdown。
  • 隱身模式:模擬真實使用者行為,避免被識別為機器人。
  • 自適應智慧:學習網站模式,僅探索相關內容。
  • 深度爬取:支援 BFS 策略,具備崩潰復原與預取模式,實現更快發現。
  • 靈活提取:結合 LLM 驅動的語意提取與快速 CSS 基礎的模式提取。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案