mcpField
S
scrapling

scrapling

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

scrapling について

scraplingは、コードを書かずにウェブページを取得・抽出するコマンドラインスキルです。静的ページ、JavaScriptで描画されるページ、ボット対策のあるサイトに対応し、AI向けのコンテンツ整形も行います。

主な機能

  1. 01HTTPメソッドによる静的ページ取得
  2. 02JavaScript描画ページの取得
  3. 03ボット対策サイトからの取得
  4. 04CSSセレクターによるコンテンツ選択
  5. 05AI利用向けコンテンツの整形

活用シーン

  1. 01記事をMarkdownで保存
  2. 02一致するページ要素の抽出
  3. 03JavaScript描画コンテンツの取得

インストール

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

$npx skills add https://github.com/hyperpuncher/dotagents --skill scrapling

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

詳細

scrapling cli

コードを書かずにページを取得し、選択したコンテンツまたは全コンテンツを保存するには、scrapling extractを使用します。

セットアップ

uv tool install "scrapling[shell]"
scrapling install

リリースに応じて、Scraplingを更新し、ブラウザーとフィンガープリントを更新してください。

uv tool upgrade scrapling
scrapling install --force

必須の安全対策

コンテンツをAIモデルが読み取る場合は、必ず--ai-targetedを追加してください。本文を維持しながら、プロンプトインジェクションを含む可能性のあるノイズの多いコンテンツや非表示コンテンツを削除し、コメントとゼロ幅文字を取り除き、ブラウザーコマンドで広告ブロックを有効にします。

コマンドを選択する

用途コマンド
静的ページ、ブログ、ニュース、APIget、post、put、delete
JavaScriptで描画されるページfetch
Cloudflareまたはアンチボット保護stealthy-fetch

まずgetを試し、次にfetch、その後stealthy-fetchを試してください。

出力

出力形式はファイルの拡張子で選択されます。

  • .md:Markdown
  • .html:HTML
  • .txt:クリーンなテキスト

読みやすさを優先する場合は.mdを使い、--css-selectorで出力を絞り込んでください。

よくある使用例

# static page
scrapling extract get "https://example.com" /tmp/page.md --ai-targeted

# select matching elements
scrapling extract get "https://example.com" /tmp/articles.md \
	--css-selector "article" --ai-targeted

# query parameters, headers, and cookies
scrapling extract get "https://example.com/search" /tmp/results.md \
	-p "q=scrapling" \
	-H "Accept-Language: en-US" \
	--cookies "session=abc123" \
	--ai-targeted

# form or JSON request
scrapling extract post "https://example.com/search" /tmp/results.txt \
	--data "q=scrapling" --ai-targeted

scrapling extract put "https://example.com/resource" /tmp/result.txt \
	--json '{"enabled":true}' --ai-targeted

# JavaScript-rendered page
scrapling extract fetch "https://example.com" /tmp/page.md \
	--network-idle --ai-targeted

# protected page
scrapling extract stealthy-fetch "https://example.com" /tmp/page.md \
	--solve-cloudflare --ai-targeted

コマンドの完了後に出力ファイルを読み取り、一時ファイルを削除してください。

主なオプション

すべてのコマンドで、次のオプションを使用できます。

  • -s, --css-selector TEXT:一致するすべての要素を返します
  • --ai-targeted:AIによる利用に向けてコンテンツをサニタイズします
  • --proxy TEXT:プロキシURL

HTTPコマンドでは、次のオプションも使用できます。

  • -H, --headers TEXT:繰り返し指定できるKey: Value形式のヘッダー
  • --cookies TEXT:name=value; name2=value2
  • -p, --params TEXT:繰り返し指定できるクエリパラメーター
  • --timeout INTEGER:秒数。デフォルトは30
  • --impersonate TEXT:chromeやfirefoxなどのブラウザーフィンガープリント
  • --follow-redirects / --no-follow-redirects
  • --verify / --no-verify
  • --stealthy-headers / --no-stealthy-headers
  • --data TEXTおよび--json TEXT:postとputで使用できます

fetchとstealthy-fetchでは、次のオプションも使用できます。

  • --headless / --no-headless
  • --network-idle / --no-network-idle
  • --disable-resources / --enable-resources
  • --wait INTEGER:追加の待機時間(ミリ秒)
  • --wait-selector TEXT
  • --timeout INTEGER:ミリ秒。デフォルトは30000
  • --locale TEXT
  • -H, --extra-headers TEXT
  • --real-chrome / --no-real-chrome
  • --block-ads / --no-block-ads
  • --dns-over-https / --no-dns-over-https:プロキシ使用時のDNSリークを防止します
  • --executable-path TEXT:Chromium実行ファイルを指定します。指定がない場合はSCRAPLING_EXECUTABLE_PATHにフォールバックします

stealthy-fetchでは、さらに次のオプションも使用できます。

  • --solve-cloudflare / --no-solve-cloudflare
  • --block-webrtc / --allow-webrtc
  • --allow-webgl / --block-webgl
  • --hide-canvas / --show-canvas

ヘルプ

scrapling extract --help
scrapling extract get --help
scrapling extract fetch --help
scrapling extract stealthy-fetch --help

リソース:ドキュメント · GitHub

コメント