LightCrawl icon

LightCrawl

LightCrawl 是可自架的網頁爬取 API 與 MCP 伺服器,可將網頁轉成乾淨 Markdown,支援 HTTP 存取、MCP 用戶端、文章擷取、整頁轉換與可選 Redis 爬取。

LightCrawl

概覽

LightCrawl 是可自架的網頁爬取 API 與 Model Context Protocol (MCP) 伺服器,可將網頁轉成乾淨 Markdown。它被設計成輕量、單容器的替代方案,適合想要進行頁面擷取、網站映射與爬取,而不必為每個請求都執行完整瀏覽器堆疊的開發者。

這個專案強調低資源運作與彈性部署。根據 README,它可以透過 Express API 提供 HTTP 請求服務、透過 stdio 回應 MCP 用戶端,並可依頁面需求在靜態擷取與瀏覽器式渲染之間切換。

儲存庫文件也將 LightCrawl 定位為適合本機開發、基於 Docker 的部署,以及在需要多個工作者或佇列工作時使用 Redis 支援的分散式爬取。其公開頁面將它描述為開源且可自架,而不是託管式 SaaS 產品。

核心功能

混合擷取模式

先使用輕量的靜態 HTTP 擷取,只有在需要渲染或出現機器人防護時才回退到 Playwright。

快速回應路徑

支援 `fast=true` 模式,可略過捲動延遲,並使用較輕量的 DOM 解析器來降低 CPU 與記憶體使用量。

動態內容處理

在需要瀏覽器回退時,會自動捲動頁面並擷取已渲染的 HTML,有助於處理延遲載入內容。

兩種擷取模式

以基於 Readability 的 `article` 模式將頁面轉成 Markdown,並提供 `full` 模式進行完整的 HTML 轉 Markdown 轉換。

爬取與映射工作流程

可找出內部 URL 供映射使用,支援遞迴爬取,並可在 Redis 中執行爬取佇列以進行分散式處理。

運維與用戶端介面

提供與 Prometheus 相容的指標、結構化 JSON 日誌,以及 MCP 伺服器介面,並搭配 HTTP API 使用。

常見使用情境

  • 將文章轉成可讀文字

    當你想把部落格文章、新聞報導或文件頁面的主要內容擷取成乾淨 Markdown,以供後續處理時,請使用 `article` 模式。

  • 擷取完整頁面內容

    當你需要整個頁面主體,例如目錄頁、入口頁或搜尋結果頁,而不是只保留主要文章內容時,請使用 `full` 模式。

  • 映射或爬取網站

    使用映射與爬取端點,從目標網域探索內部連結,然後依據設定的深度與數量限制遞迴瀏覽網站。

  • 在隔離環境中自架

    當你需要一個獨立的爬取器,並希望將瀏覽器執行保留在用戶端機器之外時,可在 Docker 或單一自架容器中執行此服務。

  • 使用 Redis 擴展爬取工作負載

    當專案需要共享佇列狀態或跨多個工作負載協作的背景工作者時,可啟用 Redis 支援的爬取。

Pros and Cons

Pros

  • 將爬取、映射與抓取整合在同一個可自架服務中。
  • 採用輕量、先靜態後瀏覽器的流程,在頁面簡單時可避免瀏覽器渲染。
  • 提供以文章為主的擷取模式,以取得更乾淨的內容,並提供完整模式以進行更廣泛的頁面轉換。
  • 支援 Redis 支援的分散式爬取,可應付更大型的工作負載。
  • 包含可觀測性功能,例如與 Prometheus 相容的指標與結構化日誌。

Cons

  • 來源資料對於 HTTP API 與 MCP 伺服器支援以外的用戶端/函式庫相容性著墨有限。
  • 部分運作細節,例如精確的輸出結構與進階整合,在提供的來源中僅有部分文件說明。

FAQ

LightCrawl 如何部署與存取?

LightCrawl 以自架服務的形式運作。README 說明它同時可作為基於 Express 的 HTTP API 與 MCP 伺服器,並支援可設定的存取控制,例如可選的 API 金鑰與允許的 IP 清單。

LightCrawl 會從網頁擷取什麼?

README 文件說明兩種擷取模式:`article` 用於主要文章內容,`full` 用於將整個 HTML 主體轉成 Markdown。它也包含用於爬取、映射與抓取的端點。

LightCrawl 支援分散式爬取嗎?

這個專案同時支援記憶體佇列與 Redis 支援的爬取佇列。當設定 `REDIS_URL` 時,它可以使用 Redis 作為分散式佇列與狀態後端,並可透過 `ENABLE_DISTRIBUTED_WORKER` 啟用可選的背景工作者。

LightCrawl 可以在 Docker 中執行嗎?

README 列出了 Dockerfile、單容器設定,以及針對僅使用 Chromium 的 Playwright 最佳化多階段建置,這使它適合用於以容器為基礎的自架部署。

LightCrawl 本身是付費服務嗎?

公開的 GitHub 定價頁面顯示 GitHub 本身提供免費方案與付費方案。這表示該專案託管於 GitHub,但儲存庫 README 仍將 LightCrawl 描述為可自架的開源專案,而非託管式 SaaS 產品。

Quick Facts

分類
開發者工具
產品類型
可自架的網頁爬取 API 與 MCP 伺服器
主要輸出
將網頁轉成 Markdown
部署方式
單容器、適合 Docker
執行環境
Node.js 18+
來源網域
github.com