LightCrawl logo

LightCrawl

認領

LightCrawl 是可自架的 web scraping API 與 MCP server,可將網頁轉成 Markdown,適合需要輕量化容器化爬取、抓取與頁面映射的開發者與 AI 工作流程。

LightCrawl preview

概覽

LightCrawl 是一個輕量、單一容器、可自架的 web scraping API 與 Model Context Protocol(MCP)server。它可將網頁轉換為乾淨的 Markdown,並在 repository 中被定位為 Firecrawl 的極簡、低成本替代方案,適用於本機開發與低資源環境。

此專案旨在處理從簡單頁面到較困難目標的各種情境。它會先進行靜態抓取,若偵測到需要 JavaScript 渲染或遇到機器人防護,則退回使用 Playwright,接著再透過 HTTP API 或 MCP 介面輸出結果。README 也描述了以文章為主的擷取、整頁轉換、爬取、網站映射、Redis 支援的分散式佇列,以及可選的基於 Brave Search 的搜尋工具。

此 repository 將服務呈現為一個供開發者與 AI agent 工作流程使用的自架工具,適合需要經過清理的網頁內容,而不是原始瀏覽器存取。其文件強調容器化隔離、Markdown 輸出,以及透過 `PORT`、`API_KEY`、`ALLOWED_IPS`、`REDIS_URL` 和 `MAX_CONCURRENCY` 等環境變數進行設定。

功能

混合式擷取流程

先嘗試輕量的靜態 HTTP 擷取,只有在頁面看起來是動態或受到保護時,才退回使用無頭瀏覽器。這讓簡單頁面維持快速,同時不犧牲對 JavaScript 密集網站的支援。

兩種內容擷取模式

提供 `article` 與 `full` 兩種擷取模式。`article` 使用 Mozilla Readability 擷取主要內容,而 `full` 則將整個 HTML 主體轉換為 Markdown。

較輕量執行的快速模式

支援 `fast=true` 以跳過較長的瀏覽器等待流程,並使用較輕量的 DOM 解析器。README 將此模式定位為較低的 CPU 與記憶體用量。

雙重 API 與 MCP 介面

同時可作為 Express HTTP API 與透過 stdio 的 MCP server 執行。倉庫也提到使用 Swagger UI 進行 endpoint 文件查閱與測試。

爬取與網站映射

可遞迴爬取網站,並能在已註冊網域內映射內部 URL。它支援記憶體佇列以及基於 Redis 的分散式爬取。

自架營運工具

使用帶有 stealth 工具的 Playwright、原生相容 Prometheus 的指標,以及結構化 JSON logs。Docker 映像設計為只安裝 Chromium,以縮小容器體積。

使用情境

  • AI 與自動化流程

    當你希望將網頁標準化為 Markdown 以供後續處理,而不是在自己的應用程式中開啟瀏覽器時,可將它作為本機或伺服器端的抓取層來使用。

  • 從內容頁擷取文章

    當目標是部落格文章、新聞報導或文件頁面,且主要內容比導覽或版面更重要時,使用 article 模式。

  • 結構化頁面的整頁轉換

    當你需要保留整個頁面主體,例如入口網站、目錄清單或搜尋結果時,使用 full 模式。

  • 網站探索與遞迴爬取

    當你需要探索同一已註冊網域中的相關頁面,並在深度與數量限制內遞迴處理網站時,使用 crawl 與 map endpoints。

  • 自架抓取基礎架構

    當你需要共享爬取佇列、背景 worker,或一個能留在自有基礎架構內的自架服務時,可在 Docker 中搭配可選的 Redis 部署。

Pros and Cons

Pros

  • 單一容器的自架設計讓部署更簡單。
  • Markdown 輸出特別適合下游自動化與 LLM 工作流程。
  • 混合式擷取邏輯在頁面可用靜態方式處理時,可避免啟動瀏覽器。
  • 同一個服務同時支援 HTTP API 與 MCP 存取。
  • 包含爬取、網站映射,以及可選的 Redis 分散式處理,適合較大型工作。

Cons

  • 倉庫文件是主要的詳細資訊來源;部分 endpoint 行為與輸出細節在可取得的文字中只被部分描述。
  • 進階功能(如分散式爬取與 Brave Search 工具)取決於可選設定或外部金鑰,因此基本設定可能無法涵蓋所有工作流程。

FAQ

LightCrawl 是用來做什麼的?

LightCrawl 是可自架的 web scraping API 與 MCP server,可將網頁轉換為 Markdown。它也提供 HTTP endpoints 與 Swagger UI,方便進行 API 文件查閱與 endpoint 測試。

LightCrawl 如何部署?

README 列出了 HTTP API 與 MCP 的使用方式,而 Dockerfile 顯示其部署方式為以 Playwright 為基礎、並安裝 Chromium 的容器化部署。此專案設計為單一容器執行,並可透過 PORT、API_KEY 和 REDIS_URL 等環境變數進行設定。

它支援哪些輸出與爬取模式?

README 描述了兩種擷取模式:`article` 會使用 Mozilla Readability 聚焦主要內容,而 `full` 會將整個 HTML 主體轉換為 Markdown。它也提供 `fast=true` 模式,以降低瀏覽器與解析器的額外負擔。

什麼情況下應該選擇 LightCrawl,而不是單純的頁面抓取器?

當專案需要將網頁內容轉換為 Markdown 供後續處理時,可先採用輕量的靜態擷取,若偵測到 JavaScript 渲染或反機器人保護,則再退回使用 Playwright。它也提供網站映射、遞迴爬取、Redis 支援的分散式爬取,以及可選的 Brave Search 驅動搜尋工具。

LightCrawl 是付費服務嗎?

此倉庫與變更記錄顯示該專案為開源且可自架,README 也提到其目標是低成本託管。GitHub 的 pricing 頁面同時顯示儲存庫有免費方案,但專案本身並未公布自己的定價。

Quick Facts

類別
開發者工具
主要格式
可自架服務
介面
HTTP API 與 MCP server
內容輸出
Markdown
部署
單一容器 Docker 映像
來源網域
github.com