mcpField
F
firecrawl-scraper

firecrawl-scraper

github.com/secondskyデータ・データベース240228 回インストール5 週間前に更新
リポジトリ

firecrawl-scraper について

データパイプラインや AI アプリを構築する開発者向けに、Firecrawl でウェブコンテンツを収集・抽出する方法を示すスキルです。単一ページの取得、サイト巡回、URL 発見、スキーマに基づく抽出に加え、ブラウザー操作や Workers REST API も扱います。

主な機能

  1. 01ページを Markdown、HTML、スクリーンショットで取得
  2. 02ドメインと深さを指定したサイト巡回
  3. 03サイト URL の発見
  4. 04スキーマに基づくデータ抽出
  5. 05取得中のブラウザー操作

活用シーン

  1. 01ナレッジベース用のドキュメント収集
  2. 02商品名と価格の抽出
  3. 03ニュース記事の取得
  4. 04サイト巡回前のページ発見

インストール

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

$npx skills add https://github.com/secondsky/claude-skills --skill firecrawl-scraper

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
common-patterns.md
endpoints.md
templates/
firecrawl-crawl-example.py
firecrawl-scrape-python.py
firecrawl-scrape-typescript.ts
firecrawl-worker-fetch.ts

詳細

Firecrawl Web Scraper Skill

ステータス:本番環境で利用可能 ✅ 最終更新日:2026-08-03 公式ドキュメント:https://docs.firecrawl.dev API バージョン:v2.5


Firecrawl とは?

Firecrawl は、ウェブサイト全体を LLM 対応のマークダウンまたは構造化データに変換するAI 向け Web データ APIです。以下の機能を備えています。

  • JavaScript のレンダリング - クライアントサイドの JavaScript を実行し、動的コンテンツを取得します
  • ボット対策の回避 - CAPTCHA やボット検出システムを回避します
  • 形式の変換 - マークダウン、JSON、構造化データとして出力します
  • スクリーンショットの取得 - ページの視覚的な表示を保存します
  • ブラウザーの自動化 - フル機能のヘッドレスブラウザーを利用できます

API エンドポイント

1. /v2/scrape - 単一ページのスクレイピング

単一のウェブページをスクレイピングし、整理されたコンテンツを返します。

ユースケース:

  • 記事のコンテンツを抽出する
  • 製品の詳細を取得する
  • 特定のページをスクレイピングする
  • HTML をマークダウンに変換する

主なオプション:

  • formats:["markdown", "html", "screenshot"]
  • onlyMainContent:true/false(ナビゲーション、フッター、広告を削除します)
  • waitFor:スクレイピング開始前に待機する時間(ミリ秒)
  • actions:ブラウザーの自動化アクション(クリック、スクロールなど)
2. /v2/crawl - サイト全体のクロール

開始 URL からアクセス可能なすべてのページをクロールします。

ユースケース:

  • ドキュメントサイト全体をインデックス化する
  • ウェブサイトのコンテンツをアーカイブする
  • ナレッジベースを構築する
  • 複数ページのコンテンツをスクレイピングする

主なオプション:

  • limit:クロールするページの最大数
  • maxDepth:たどるリンクの深さ
  • allowedDomains:特定のドメインに制限する
  • excludePaths:特定の URL パターンを除外する
3. /v2/map - URL の検出

コンテンツをスクレイピングせずに、ウェブサイト上のすべての URL をマッピングします。

ユースケース:

  • サイトマップを見つける
  • すべてのページを検出する
  • クロール戦略を計画する
  • ウェブサイトの構造を監査する
4. /v2/extract - 構造化データの抽出

AI を使用して、ページから特定のデータ項目を抽出します。

ユースケース:

  • 製品の価格と名前を抽出する
  • 連絡先情報を解析する
  • 構造化データセットを構築する
  • カスタムデータスキーマを使用する

主なオプション:

  • schema:必要な構造を定義する Zod または JSON スキーマ
  • systemPrompt:AI の抽出動作を指示します

認証

Firecrawl では、すべてのリクエストに API キーが必要です。

API キーの取得
  1. https://www.firecrawl.dev で登録します
  2. ダッシュボード → API Keys に移動します
  3. API キーをコピーします(fc- で始まります)
安全な保管

API キーをコードに直接記述しないでください!

# .env file
FIRECRAWL_API_KEY=fc-your-api-key-here
# .env.local (for local development)
FIRECRAWL_API_KEY=fc-your-api-key-here

SDK のクイックスタート

Python
pip install firecrawl-py  # v4.5.0+
from firecrawl import FirecrawlApp
import os

app = FirecrawlApp(api_key=os.environ.get("FIRECRAWL_API_KEY"))
result = app.scrape_url("https://example.com", params={"formats": ["markdown"], "onlyMainContent": True})
print(result.get("markdown"))
TypeScript/Node.js
bun add @mendable/firecrawl-js  # v4.32.0+
import FirecrawlApp from '@mendable/firecrawl-js';

const app = new FirecrawlApp({ apiKey: process.env.FIRECRAWL_API_KEY });
const result = await app.scrapeUrl('https://example.com', { formats: ['markdown'], onlyMainContent: true });
console.log(result.markdown);

参照:クロール、抽出、高度な使用例については templates/ をご覧ください。


一般的なユースケース

ユースケースエンドポイント主なオプション
ドキュメントのスクレイピングcrawl_url()limit: 500、allowedDomains
製品データの抽出extract()Zod スキーマ + systemPrompt
ニュース記事のスクレイピングscrape_url()onlyMainContent: true、removeBase64Images
URL の検出map()クロール前にすべてのページを見つける

参照:完全な使用例については references/common-patterns.md をご覧ください。


エラー処理

# Python
try:
    result = app.scrape_url("https://example.com")
except FirecrawlException as e:
    print(f"Firecrawl error: {e}")
// TypeScript
try {
  const result = await app.scrapeUrl('https://example.com');
} catch (error) {
  console.error('Error:', error.message);
}

レート制限とベストプラクティス

ベストプラクティス理由
onlyMainContent: true を使用するクレジットを節約し、より整理された出力を得られます
適切な limit を設定する過剰なコストを避けられます
最初に map エンドポイントを使用するクロール戦略を計画できます
結果をキャッシュする再スクレイピングを避けられます
抽出の呼び出しをまとめる複数の URL をより効率的に処理できます

クレジット:無料プランは月 500 クレジット、有料プランでは上限が増えます。


Cloudflare Workers との統合

⚠️ SDK は Workers で実行できません(Node.js の依存関係があるため)。REST API を直接使用してください。

const response = await fetch('https://api.firecrawl.dev/v2/scrape', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${env.FIRECRAWL_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ url, formats: ['markdown'], onlyMainContent: true })
});

参照:キャッシュを含む Workers の完全な使用例については references/common-patterns.md をご覧ください。


このスキルを使用する場合

✅ Firecrawl を使用する❌ 使用しない
最新の JS レンダリングサイトシンプルな静的 HTML(cheerio を使用)
LLM 向けのクリーンな Markdown既存の Puppeteer セットアップが動作する
RAG/チャットボットのコンテンツ直接利用できる API がある
構造化データの抽出予算の制約がある
ボット保護の回避

よくある問題

問題原因対処法
"Invalid API Key"キーが設定されていない$FIRECRAWL_API_KEY が fc- で始まることを確認する
"Rate limit exceeded"月間クレジットを使い切ったダッシュボードを確認し、プランをアップグレードする
"Timeout error"ページの読み込みが遅いwaitFor: 10000 を追加する
"Content is empty"JS の読み込みが遅いactions: [{type: "wait", milliseconds: 3000}] を追加する

高度な機能

機能使用方法
ブラウザー操作actions: [{type: "click", selector: "button"}]
カスタムヘッダーheaders: {"User-Agent": "Custom Bot"}
Webhookwebhook: "https://your-domain.com/webhook"
スクリーンショットformats: ["screenshot"]

参照先:完全な API リファレンスについては、references/endpoints.md を参照してください。


リファレンスを読み込むタイミング

リファレンス読み込むタイミング
endpoints.mdAPI エンドポイントの完全なドキュメントが必要な場合
common-patterns.mdCloudflare Workers、キャッシュ、バッチ処理、エラー処理を扱う場合

パッケージのバージョン

パッケージバージョン
firecrawl-py4.5.0+
@mendable/firecrawl-js4.32.0+
APIv2

注:Node.js SDK には Node.js >=22.0.0 が必要です。Workers では実行できません。


公式ドキュメント:https://docs.firecrawl.dev | GitHub:https://github.com/mendableai/firecrawl

トークン削減率:約60% | 本番環境対応:✅

コメント