1. Web Scraperの概要

Web Scraper は、ブラウザで開いているWebページ(商品リスト、記事一覧、ニュース見出し、検索結果など)の繰り返しデータを自動的に検出・抽出するChrome / Edge / Firefox対応の拡張機能です。

ページを開いて拡張機能アイコンをクリックするだけで、ページ内の構造を自動解析し、テーブル形式でプレビューを作成します。また、複数ページにまたがるデータの一括収集(ページング)にも対応しています。

2. 他のスクレイピング拡張機能との違い

Web Scaperは、類似の拡張機能と比較して以下のような特徴を持っています。

🔄 独自機能
連続ページの自動検出と自動巡回

URLのクエリパラメータ(?page=2)やパスセグメント(/page/2/)、さらにページ内の「次へ」リンクを自動検出。トグルひとつで全ページを自動巡回し、データを一括収集します。

👆 独自機能
手動ページ送りモード

Nページ目をスキャン」ボタンで、ユーザー自身のペースで1ページずつ確認しながらデータを蓄積できます。自動巡回が不安な場合や特定のページだけ収集したい場合に最適です。

🔍 独自機能
ビジュアルセレクターで抽出範囲を変更

自動検出された範囲が意図と異なる場合、Webページ上で直接マウスクリックして抽出範囲のコンテナを選択し直せます。階層ナビゲーターで親要素への切り替えも簡単です。

ワンクリックで自動解析

拡張機能アイコンをクリックするだけで、ページ内の繰り返し構造(ul/li, テーブル, カード型レイアウトなど)を自動スコアリングし、最適なデータ領域を即座にプレビュー表示します。

🛡️
最小権限・動的権限リクエスト

インストール時には最小限のアクセス権限のみを使用。スクレイピング実行時にのみ対象ドメインへの一時的なアクセス権限をダイアログでリクエストするため、プライバシーリスクを最小化します。

📁
3形式でエクスポート

CSV(BOM付きUTF-8, RFC 4180準拠)、JSON(インデント付き整形出力)、テキスト(TSV形式)の3つのフォーマットに対応。Excelやスプレッドシートで即座にインポートできます。

機能比較表

機能 Web Scraper
(本拡張機能)
一般的な
スクレイピング拡張
テーブル抽出
専用拡張
ページを開くだけで自動検出 △ 手動設定が必要
リスト / カード型レイアウトの抽出
連続ページの自動検出・自動巡回 △ 手動URL指定
手動ページ送り(1ページずつ確認)
ビジュアルセレクターで範囲変更
動的権限リクエスト(最小権限) ✖ 全サイトに許可
CSV / JSON / テキスト 3形式エクスポート △ CSV のみ

3. 基本的な使い方(図解ガイド)

拡張機能を使用した基本的なスクレイピングの流れを、スクリーンショット付きで解説します。

  • 1
    Webページを開き、拡張機能をクリック

    データを収集したいWebページ(ニュース一覧、商品リスト、検索結果など)をブラウザで表示し、右上にある拡張機能アイコン icon をクリックします。ポップアップが開き、現在のページのURLが自動的にインポートされます。

  • 2
    自動解析 — データが即座にプレビューされます

    ページの構造が自動解析され、検出された繰り返し要素がテーブル形式でプレビュー表示されます。URLやタイトル、画像URLなど、各データが自動的にカラム分けされます。

    Web Scraper メインウィンドウ — 日経マーケットデータの自動解析結果
    図1: メインウィンドウ — ページを開くだけで繰り返しデータが自動検出・プレビューされます
    • AURL・タイトル表示: 現在解析中のページURLとページタイトルが表示されます。
    • Bページングモード切替: 手動ページング 自動ページング のトグルスイッチで、手動 / 自動を切り替えます。
    • C手動ページ送りボタン: 2ページ目をスキャン をクリックすると、次のページのデータが既存データの下に追加されます。
    • D抽出フィールド選択: チェックボックスで不要なカラム(列)のエクスポートをオン / オフできます。
    • Eデータプレビューテーブル: 自動抽出されたデータの一覧です。リンクURL、テキスト、画像URLなどが列ごとに表示されます。
    • Fダウンロードボタン: CSV JSON テキスト のいずれかの形式でデータを保存できます。
  • 3
    抽出範囲の変更(必要な場合)

    自動検出された範囲が意図と異なる場合は、🔍 抽出範囲を再選択する ボタンをクリックすると、ビジュアルセレクターが起動します。

    ビジュアルセレクター — Webページ上で抽出範囲を直接指定
    図2: ビジュアルセレクター — 対象ページ上で抽出したい領域を直接クリックして選択できます
    • Aハイライト表示: マウスを動かすと、候補となるコンテナ(データ領域)が点線の青い枠線でハイライトされます。データを含む領域をクリックして選択します。
    • B階層ナビゲーター: 右下のパネルに、現在の候補要素からルートまでの親要素がリスト表示されます。クリックすると、より広い範囲(親コンテナ)や狭い範囲(子要素)に切り替えることができます。
    • C選択キャンセル: Esc キーまたはキャンセルボタンで選択を中止し、元の自動検出結果に戻れます。
    ヒント: テーブルの特定の行だけでなく、テーブル全体を選択したい場合は、階層ナビゲーターで tabletbody 要素をクリックしてみてください。
  • 4
    複数ページのデータ収集(ページング)

    対象サイトが複数ページに分かれている場合、2つの方法でデータを一括収集できます。

    🅰 手動ページング(デフォルト)

    トグルが「手動ページング」側になっている状態で、Nページ目をスキャン ボタンをクリックすると、次ページのデータが自動的にプレビューテーブルの下に追加されます。1ページずつ確認しながら収集したい場合に最適です。

    🅱 自動ページング

    トグルを「自動ページング」側に切り替えて 自動スキャン開始 をクリックすると、2ページ目、3ページ目と自動的に巡回してデータを一括収集します。

    ページ送り待ち時間、タイムアウト、最大収集ページ数をその場で調整できます。

    自動ページングの仕組み: URLから次ページのパラメータ(?page=2/page/2/ 等)を自動検出するか、ページ内の「次へ」「Next」「>」ボタンを自動追跡します。データ件数が0件、次のリンクが見つからない、同じURLに戻った、または最大ページ数に到達した場合に自動終了します。
  • 5
    データのダウンロード

    収集したデータは、プレビューテーブル下部の CSV JSON テキスト ボタンから即座にダウンロードできます。

    形式 特徴
    CSV BOM付きUTF-8 / RFC 4180準拠。Excel やスプレッドシートで直接開けます。
    JSON インデント付き整形出力。プログラムでの後処理やAPI連携に適しています。
    テキスト タブ区切り(TSV)形式。軽量で汎用性が高く、テキストエディタでの閲覧・加工に便利です。

    エクスポート完了後、🧹 新規スクレイピングを開始(履歴クリア) ボタンでデータを消去し、初期状態に戻せます。

4. ページング自動検出の仕組み

自動ページングは、以下の3つの検出パターンを優先度順に自動判定して適用します。

パターン 対象URL・DOM例 処理内容
1. クエリパラメータ型 https://example.com/items?page=1 URLに含まれる page=N, p=N, offset=N 等の数値パラメータを自動でカウントアップ(+1)して次ページを生成します。
2. パスセグメント型 https://example.com/items/page/1/ URLのパスの一部(/page/N/ または /p/N/ など)に含まれる数値部分を自動的にカウントアップ(+1)します。
3. 「次へ」リンク追跡型 <a href="items_2.html">次へ</a> ページ内にある「次」「Next」「>」「≫」などのキーワードを持つアンカーリンク(aタグ)をDOM上で検出し、その宛先(href)を次ページと判断して辿ります。
自動ページングの終了条件: データの抽出件数が0件になった場合、次へ進むリンクが見つからなくなった場合、同じURLに戻ってきてしまった場合、またはオプション画面で指定した「最大収集ページ数」に到達した場合に、処理は安全に自動終了します。

5. オプション(詳細設定)について

拡張機能の右上にある ⚙️ オプション リンクをクリックすると、動作パラメーターの調整が行えます。これらは対象サーバーへの負荷軽減やスクレイピングの成功率向上のために役立ちます。

リクエスト間隔(最小・最大値)
各ページにアクセスする際、システムが自動的にこの範囲内でランダムな待機秒数を挿入します(初期値:1000ms〜2000ms)。アクセス集中による相手サーバーへの過負荷を防ぐための非常に重要な設定です。
最大収集ページ数
自動ページングで一度に収集するページの上限値です(初期値:50ページ)。無限ページ構成のサイトや、意図しないループに陥った際の安全ストッパーとして機能します。
リトライ上限回数
ネットワークの一時的な瞬断やエラーが発生した際、自動で再接続を試みる回数です(初期値:2回)。

6. セキュリティとトラブルシューティング

アクセス権限について(動的権限リクエスト)

本拡張機能は「最小権限の原則」に則り設計されています。インストールしただけでは特定のWebサイトの中身を読み込むことはありません。ユーザーがスクレイピング実行ボタンを押した際に対象のホスト(ドメイン)に対する一時的なアクセス権限のみをダイアログ経由でリクエストします。

ストレージの容量警告(5MB制限)について

拡張機能内で収集したデータは、ブラウザを閉じても保存されるようにローカルストレージ(chrome.storage.local)へ保存されます。この容量の上限は約 5MB です。 もし、データが蓄積し 4MB を超過した場合は、ポップアップ画面に「⚠️ ストレージの容量制限に近づいています」という黄色い警告バナーが表示されます。速やかにデータをダウンロードし、履歴をクリアしてください。

データがうまく抽出できない場合の対応

  • リロードする: Webサイトの動的読み込みの影響で一時的に解析に失敗することがあります。対象Webページをリロード(F5)してから、拡張機能を再起動してください。
  • ビジュアルセレクターを使う: 自動抽出がずれている場合、🔍 抽出範囲を再選択する ボタンから手動で抽出範囲のコンテナ(枠)を指定してください。階層ナビゲーターを使って親要素を選択することで、より適切な範囲を見つけられる場合があります。
  • JavaScriptで動的に構築されるサイト: 一部のSPA(Single Page Application)など、ブラウザ上でスクリプトが完全に走りきった後に構築されるデータは、拡張機能の解析時点でDOMが存在せず、データが取得できない場合があります。