LightCrawl logo

LightCrawl

認証する

LightCrawlは、WebページをMarkdownに変換する自己ホスト型のWebスクレイピングAPIとMCPサーバーです。開発者向けの軽量なコンテナ型代替を提供します。

LightCrawl preview

概要

LightCrawlは、軽量な単一コンテナの自己ホスト型WebスクレイピングAPIおよびModel Context Protocol(MCP)サーバーです。WebページをクリーンなMarkdownに変換し、リポジトリ内ではローカル開発や低リソース環境向けの、Firecrawlに代わる最小構成・低コストの代替として位置づけられています。

このプロジェクトは、単純なページからより難しい対象まで対応するよう設計されています。静的フェッチから始め、JavaScriptレンダリングの必要性やボット対策を検出するとPlaywrightにフォールバックし、その結果をHTTP APIまたはMCPインターフェース経由で公開します。READMEでは、記事向け抽出、ページ全体変換、クロール、サイトマッピング、Redis対応の分散キュー、Brave Searchベースの任意の検索ツールについても説明しています。

このリポジトリは、未加工のブラウザアクセスではなく、整形済みのWebコンテンツを必要とする開発者やAIエージェントのワークフロー向けの自己ホスト型ツールとしてサービスを提示しています。ドキュメントでは、コンテナ化による分離、Markdown出力、`PORT`、`API_KEY`、`ALLOWED_IPS`、`REDIS_URL`、`MAX_CONCURRENCY` などの環境変数による設定を強調しています。

機能

ハイブリッドなフェッチパイプライン

軽量な静的HTTPフェッチを最初に試し、ページが動的または保護されているように見える場合にのみヘッドレスブラウザへフォールバックします。これにより、JavaScript中心のサイトでも対応しつつ、シンプルなページは高速に処理できます。

2つのコンテンツ抽出モード

`article` と `full` の2つの抽出モードを提供します。`article` はMozilla Readabilityを使って主要コンテンツを抽出し、`full` はHTML本文全体をMarkdownに変換します。

軽量実行向けの高速モード

`fast=true` をサポートしており、長いブラウザ待機の経路を省き、より軽量なDOMパーサーを使用します。READMEでは、このモードはCPUとメモリ使用量の削減向けとされています。

HTTP APIとMCPの両対応インターフェース

ExpressベースのHTTP APIと、stdio経由のMCPサーバーの両方として動作します。リポジトリでは、エンドポイントのドキュメント表示とテスト用にSwagger UIにも言及しています。

クロールとサイトマッピング

サイトを再帰的にクロールし、登録済みドメイン内の内部URLをマッピングできます。インメモリキューに加え、Redis対応の分散クロールもサポートします。

自己ホスティング向けの運用ツール

Playwrightにステルス機能を組み合わせ、Prometheus互換のネイティブメトリクスと構造化JSONログを使用します。Dockerイメージは、コンテナを小さく保つためにChromiumのみをインストールするように構築されています。

使用例

  • AIと自動化パイプライン

    自分のアプリ内でブラウザを開く代わりに、Webページを下流処理向けにMarkdownへ正規化したい場合に、ローカルまたはサーバー側のスクレイピング層として実行します。

  • コンテンツページからの記事抽出

    対象がブログ記事、ニュース記事、またはドキュメントページで、ナビゲーションやレイアウトよりも本文が重要な場合にarticleモードを使用します。

  • 構造化ページのページ全体変換

    ポータル、ディレクトリ一覧、検索結果など、ページ本文全体を保持する必要がある場合にfullモードを使用します。

  • サイト発見と再帰的クロール

    同じ登録済みドメイン内の関連ページを見つけ、深さと件数の制限内でサイトを再帰的に処理する必要がある場合に、crawlおよびmapエンドポイントを使用します。

  • 自己ホスト型スクレイピング基盤

    共有クロールキュー、バックグラウンドワーカー、または自社インフラ内にとどまる自己ホスト型サービスが必要な場合に、オプションのRedisとともにDockerでデプロイします。

Pros and Cons

Pros

  • 単一コンテナの自己ホスト型設計により、デプロイがシンプルです。
  • Markdown出力は、下流の自動化やLLMワークフロー向けに適しています。
  • ハイブリッドなフェッチロジックにより、ページを静的に処理できる場合はブラウザを使わずに済みます。
  • 同じサービスからHTTP APIとMCPの両方にアクセスできます。
  • 大規模なジョブ向けに、クロール、サイトマッピング、任意のRedis対応分散処理を備えています。

Cons

  • リポジトリのドキュメントが主な情報源であり、いくつかのエンドポイントの動作や出力の詳細は、利用可能なテキストでは部分的にしか説明されていません。
  • 分散クロールやBrave Searchツールのような高度な機能は、任意の設定や外部キーに依存するため、基本セットアップだけではすべてのワークフローをカバーできない場合があります。

FAQ

LightCrawlは何に使われますか?

LightCrawlは、WebページをMarkdownに変換する自己ホスト型のWebスクレイピングAPIおよびMCPサーバーです。また、APIドキュメントとエンドポイントのテスト用にHTTPエンドポイントとSwagger UIも提供します。

LightCrawlはどのようにデプロイされますか?

READMEにはHTTP APIとMCPの利用方法が記載されており、DockerfileではChromiumをインストールしたPlaywrightベースのコンテナ型デプロイが示されています。このプロジェクトは単一コンテナでの実行を想定しており、PORT、API_KEY、REDIS_URLなどの環境変数で設定できます。

どのような出力やスクレイプモードをサポートしていますか?

READMEでは2つの抽出モードが説明されています。`article`はMozilla Readabilityを使って主要コンテンツに絞り込み、`full`はHTML本文全体をMarkdownに変換します。また、ブラウザ処理やパーサーのオーバーヘッドを抑える`fast=true`モードも提供されています。

単純なページフェッチャーではなくLightCrawlを選ぶのはどのような場合ですか?

このプロジェクトは、まず軽量な静的フェッチを行い、JavaScriptレンダリングやボット対策が検出された場合にPlaywrightへフォールバックします。また、サイトマッピング、再帰的クロール、Redis対応の分散クロール、Brave Searchを利用した検索ツールも提供します。

LightCrawlは有料サービスですか?

リポジトリと変更履歴によると、このプロジェクトはオープンソースで自己ホスト可能であり、READMEでは低コストのホスティング対象が示されています。GitHubの料金ページにはリポジトリ向けの無料枠も表示されていますが、プロジェクト自体は独自の料金を公開していません。

Quick Facts

カテゴリ
開発者向けツール
主要な形式
自己ホスト型サービス
インターフェース
HTTP APIとMCPサーバー
コンテンツ出力
Markdown
デプロイ
単一コンテナのDockerイメージ
ソースドメイン
github.com