mcpField
F
firecrawl-scrape

firecrawl-scrape

github.com/firecrawlデータ・データベース252107 回インストール6 日前に更新
リポジトリ

firecrawl-scrape について

URLのスクレイピングと、選択したプロバイダーツールによる構造化データ取得に特化したFirecrawlのスキルです。ツール仕様の確認、大きな結果の処理、ページや文書の抽出方法を説明します。

主な機能

  1. 01静的ページとJavaScript描画ページの取得
  2. 02プロバイダーツールの検索と仕様確認
  3. 03定義済み入力項目によるツール実行
  4. 04PDFと大規模な結果の処理
  5. 05複数URLの並行スクレイピング

活用シーン

  1. 01既知のURLからコンテンツを抽出
  2. 02プロバイダーから構造化データを取得
  3. 03ページ数を制限してPDFを解析

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/firecrawl/firecrawl-claude-plugin --skill firecrawl-scrape

インストール後、Claude Code で/firecrawl-scrapeを入力して読み込まれたか確認します。

同梱ファイルreferences/large-results.md

詳細

firecrawl scrape

ページコンテンツを取得するには URL を読み込むか、構造化データを取得するには選択したプロバイダーツールを実行します。search でツールを見つけ、実行前に list で入力を確認します。複数の URL を同時にスクレイピングできます。

構造化データの場合は、まず search skill を使って、適切なワークフローまたはデータプロバイダーを確認します。既知のページは直接読み込み、選択済みのコントラクトを再利用して、検索を繰り返さないようにします。

クイックスタート

# Basic markdown extraction
firecrawl scrape "<url>" -o .firecrawl/page.md

# Main content only, no nav/footer
firecrawl scrape "<url>" --only-main-content -o .firecrawl/page.md

# Wait for JS to render, then scrape
firecrawl scrape "<url>" --wait-for 3000 -o .firecrawl/page.md

# Multiple URLs (markdown only; each saved to .firecrawl/; -o is ignored)
firecrawl scrape https://example.com https://example.com/blog https://example.com/docs

# Get markdown and links together
firecrawl scrape "<url>" --format markdown,links -o .firecrawl/page.json

# Ask a question about the page
firecrawl scrape "https://example.com/pricing" --query "What is the enterprise plan price?"

すべてのオプションを確認するには、firecrawl scrape --help を実行してください。

完了条件: ページコンテンツまたはプロバイダーの結果について、エラーがないことを確認し、依頼に回答できるよう範囲を区切って内容を確認します。ソースリンクを保持し、部分的な結果であることを明示します。

ツールを見つけ、入力を確認し、ヘルプを得る

推測ではなく、CLI のヘルプでサポートされているオプションを確認します。

firecrawl search --help
firecrawl list --help
firecrawl scrape --help

--domain-tools によるドメイン検索では、デフォルトでツールの概要が返されます。最初からコントラクトを確認するには --tool-detail full を追加するか、以下のように list で選択したツールを確認します。プロバイダー、機能、説明のみを確認するには --tool-detail compact を使い、その 2 つの ID を指定して list で確認します。デフォルトでは概要が表示されます。すぐに複数の関連コントラクトが必要な場合は、full を優先してください。

構造化データの場合は、タスクを検索し、一致するツールのコントラクトを確認してから、宣言されている正確な入力フィールドを使って実行します。

# Web + domain matching + semantic tools
firecrawl search '<user question>'

# Semantic tools only
firecrawl search alexandria '<user question>'

# Categories → providers → tools → contract
firecrawl list
firecrawl list <category-id> --category
firecrawl list <provider-id>
firecrawl list <provider-id> <capability-id> --pretty

# Execute a tool
firecrawl scrape <provider-id>/<capability-id> --options '<JSON matching the selected contract>'

通常の検索ではウェブ検索結果とツールの一致結果が表示されます。search alexandria はツールのみを検索します。list <provider> <capability> --pretty では選択したコントラクトが表示されます。機械可読な出力には --json を使います。段階的に閲覧するには、list、次に list <category> --category、続いて list <provider> を使います。search と list は選択したプロバイダーツールを実行しません。タスクに必要なコントラクトだけを読み、推測ではなく返された識別子を使用してください。

入力の組み立てや結果の解析を始める前に、展開されたコントラクトを確認してください。

  • required: true はその入力が必須であることを示します。各 requiresOneOf グループでは、すべてではなく、少なくとも 1 つのメンバーが必要です。
  • 選択したコントラクトの確認では、すでに例が要求されています。存在する場合は単数形の example.request と example.response を確認してください。入力が空でも、入力が任意のツールでは有効な場合があります。
  • response.key は、data.alexandria[i].data 内のレコードフィールドを示します。キーが空の場合は、そのデータオブジェクト自体を指します。すべてのプロバイダーが records を返すとは限りません。
  • プロバイダーのページネーションはカタログの next とは異なります。コントラクトに記載された継続用入力と、返されたページまたはカーソルを使い、フィルターを維持して、終了シグナルが示されるまで続けてください。paginated: true だけでは、その対応関係は指定されません。

実行と大きな結果

URL のスクレイピングでは、プロバイダーツールは自動的に実行されません。見つかった正確な入力フィールドを使い、レコード ID は創作せず、検索ツールで解決してください。外側の成功フラグだけでなく、各 data.alexandria[] の結果についてエラーを確認してください。

クライアントが出力またはコンテキストの上限を報告した場合、上流のリクエストは成功している可能性があります。リクエスト ID またはスクレイプ ID を保持し、プロバイダーの呼び出しを繰り返す前に、保持された結果を復旧してください。大規模なデータセットや PDF については、ローカルファイルシステムを利用できる場合、--json -o で出力を保存し、jq などのファイルツールを使って範囲を区切って確認してください。JSON の標準出力とは標準エラー出力を分離し、JSON パーサーにパイプするときに 2>&1 でストリームを結合しないでください。リモート処理が適している場合は、保持された結果から選択するために firecrawl scrape firecrawl/bash を使います。ID、コマンド例、有効期限、エラーについては、大きな結果の復旧をお読みください。これは明示的な復旧手順であり、オーバーフローを自動検出するものではありません。

PDF とページ数の上限

PDF の解析には、ページごとに 1 クレジットかかります。特に大容量の文書やページ数が不明な文書では、--max-pages(1〜10000 の整数)を使って PDF の解析を制限してください。

firecrawl scrape "https://example.com/report.pdf" --max-pages 5 --json -o .firecrawl/report.json

上限はコマンド全体や合計クレジット数ではなく、PDF ごとに適用されます。追加の形式やオプションには、別途料金が発生する場合があります。CLI は実行前にページ数や料金を提示しません。JSON 出力を使って、返された metadata.numPages(解析済みページ数)、metadata.totalPages(文書の総ページ数)、および存在する場合は metadata.creditsUsed を確認してください。解析済みページ数が少ない場合、結果は一部のみです。

ヒント

  • --query よりも通常のスクレイピングを優先してください。 ファイルにスクレイピングしてから、grep や head を使うか、Markdown を直接読んでください。コンテンツ全体を自分で検索し、推論できます。保存せずに対象を絞った回答を 1 つだけ得たい場合に限り、--query を使ってください(追加で 5 クレジットかかります)。
  • スクレイピングは、静的ページと JavaScript でレンダリングされる SPA に対応しています。 ページで操作(クリック、フォーム入力、ページネーション)が必要な場合や、スクレイピングでコンテンツを取得できない場合は、interact に切り替えてください。
  • 複数の URL は並行してスクレイピングされます。並行処理の上限は firecrawl --status で確認してください。このモードでは Markdown のみが保存され、-o は無視されます。他に指定した形式は出力されません。Markdown を指定していない場合、JSON レスポンス全体が .md ファイルに書き込まれます。
  • 単一の形式を指定すると、コンテンツがそのまま出力されます。複数の形式(例:--format markdown,links)を指定すると、JSON が出力されます。
  • URL は必ず引用符で囲んでください。シェルが ? や & を特殊文字として解釈します。
  • 命名規則:.firecrawl/{site}-{path}.md

関連項目

  • firecrawl-search — URL がない場合にページを検索します
  • firecrawl-interact — scrape でコンテンツを取得できない場合に、interact を使ってクリックやフォーム入力などを行います
  • firecrawl-download — サイト全体をローカルファイルに一括ダウンロードします
  • firecrawl-build-scrape — ここで実行する代わりに、アプリに scrape を組み込む方法

コメント