mcpField
J
jb-docs-scraper

jb-docs-scraper

github.com/bjesuiterドキュメント036 回インストール1 週間前に更新
リポジトリ

jb-docs-scraper について

jb-docs-scraperは、ドキュメントサイトをクロールし、ページをローカルのMarkdownファイルとして保存するスキルです。URLフィルターに加え、クロールの深さとページ数を指定できます。

主な機能

  1. 01幅優先探索によるドキュメントのクロール
  2. 02ドメインとURLパターンの検出
  3. 03URLパターンによるページ絞り込み
  4. 04ページのMarkdown変換
  5. 05URLパスを反映した出力構成
  6. 06深さとページ数の上限設定

活用シーン

  1. 01ドキュメントサイトをローカル参照用に保存する
  2. 02クロール範囲をドキュメント内の一部に絞る
  3. 03試験的なクロールの規模を制御する
  4. 04ローカルのMarkdown文書を更新する

インストール

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

$npx skills add https://github.com/bjesuiter/skills --skill jb-docs-scraper

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

同梱ファイルreferences/scrape_docs.py

詳細

ドキュメントスクレイパー

ドキュメントサイトをスクレイピングして、ローカルの Markdown ファイルに保存します。非同期の Web クローリングには crawl4ai を使用します。

クイックスタート

# Scrape any documentation URL
uv run --with crawl4ai python ./references/scrape_docs.py <URL>

# Examples
uv run --with crawl4ai python ./references/scrape_docs.py https://mediasoup.org/documentation/v3/
uv run --with crawl4ai python ./references/scrape_docs.py https://docs.rombo.co/tailwind

デフォルトでは、出力先は ./docs/<auto-detected-name>/ です。

前提条件(初回のみ)

uv run --with crawl4ai playwright install

使用方法

uv run --with crawl4ai python ./references/scrape_docs.py <URL> [OPTIONS]
オプション
オプション説明デフォルト
-o, --output PATH出力ディレクトリ./docs/<auto-detected-name>
--max-depth Nリンクの最大深度6
--max-pages Nスクレイピングするページの最大数500
--url-pattern PATTERNURL フィルター(glob)自動検出
-q, --quiet詳細な出力を抑制False
例
# Basic - scrape to ./docs/documentation_v3/
uv run --with crawl4ai python ./references/scrape_docs.py \
  https://mediasoup.org/documentation/v3/

# Custom output directory
uv run --with crawl4ai python ./references/scrape_docs.py \
  https://docs.rombo.co/tailwind \
  --output ./my-tailwind-docs

# Limit crawl scope
uv run --with crawl4ai python ./references/scrape_docs.py \
  https://tanstack.com/start/latest/docs/framework/react/overview \
  --max-pages 50 \
  --max-depth 3

# Custom URL pattern filter
uv run --with crawl4ai python ./references/scrape_docs.py \
  https://example.com/docs/api/v2/ \
  --url-pattern "*api/v2/*"

動作の仕組み

  1. ドメインと URL パターンを入力 URL から自動検出します
  2. BFS(幅優先探索)方式でクロールします
  3. ドキュメントのセクション内にとどまるようフィルタリングします
  4. ページをクリーンな Markdown に変換します
  5. URL パスを反映したディレクトリ構造で保存します

出力構造

docs/<name>/
  index.md           # Root page
  getting-started.md
  api/
    overview.md
    client.md
  guides/
    installation.md

トラブルシューティング

問題解決策
Playwright browser binaries are missinguv run --with crawl4ai playwright install を実行してください
出力が空URL パターンが実際のドキュメント URL と一致しているか確認してください。--url-pattern を試してください
ページが不足している--max-depth または --max-pages を増やしてください
意図しないページがスクレイピングされるより厳密な --url-pattern を指定してください

ヒント

  1. 最初にテストする — 本格的にクロールする前に、--max-pages 10 を使って設定を確認してください
  2. 出力名を確認する — スクリプトは URL のパス要素から名前を自動検出します
  3. 再実行しても安全 — ファイルは上書きされ、重複はスキップされます

コメント