

# Googleの検索結果をすべて表計算ファイルに出力できますか？

Googleのウェブ検索結果は、件数に上限を設けたサンプルとして表計算ファイルにエクスポートできます。ただし、そのファイルがGoogleの全検索結果や、あるサイトのインデックス登録済みページをすべて含むことにはなりません。正確な検索クエリ、国、言語、検索結果の順位、確認時刻を保存してください。そのうえで、指定した上限、保存行数、重複を除いたリンク先アドレス数、収集が停止した理由を報告します。

自分のサイトで把握している全ページが必要な場合は、まず自分のサイトのページ一覧とGoogle Search Consoleの記録を使ってください。サイト所有者が持つこれらの記録のほうが、その目的に適しています。公開検索のエクスポートから分かるのは、選択した検索でどの結果が表示されたかです。Googleは、`site:`の結果は網羅的ではなく、インデックスに登録されたアドレスでも表示される保証はないと説明しています。[Googleのサイト内検索ガイド — 2026年10月25日に確認。検索の制約を説明するもので、サイトの全ページ一覧ではありません](https://developers.google.com/search/docs/monitor-debug/search-operators/all-search-site)

条件を定めた公開検索のサンプルを作る場合、ChronometricaのGoogle Search Scraperには、表計算に使いやすい形式が文書化されています。検索結果の記録1件につき、1行を保存する形式です。ここでいう記録とは、特定の検索、ページ、順位に対応して保存された検索結果1件を指します。Actorは、ホスティング環境で動作するデータ収集プログラムです。Actorが行を収集しますが、エクスポートの確認と収集範囲の限界の説明は利用者が行う必要があります。[Chronometrica Google Search Scraper — 2026年10月25日に入出力仕様を確認。有料実行は未実施](https://apify.com/chronometrica/google-search-scraper)

## 1. 表で何を明らかにするかを決める

「すべての検索結果」ではなく、確認できる依頼に置き換えてください。たとえば、「国を米国、言語を英語に設定し、1つの検索クエリについてGoogleのウェブ検索結果の記録を最大10件保存する」とします。

保存上限とは、各検索エンジンで実行した各クエリについて、収集時に保存できる行数の最大値です。取得元がその件数の結果を返すという約束ではありません。

収集前に、次の事項を決めて記録してください。

1. 一覧の目的を明記します。たとえば、あるテーマを調べるための候補ページや、どのリンク先が表示されたかを示す記録が必要な場合があります。
2. 検索クエリの文字列を正確に保存します。つづり、句読点、検索演算子をそのまま残してください。
3. 最初のエクスポートでは、検索エンジンにGoogleを選びます。
4. 検索で指定する国と言語を設定します。
5. 行数の上限を設定し、広告の検索結果を含めるかどうかを記録します。
6. 表を使用する前に満たすべき確認条件を決めます。

検索演算子とは、`site:`のように、検索エンジンに検索範囲の絞り込みを求める文字列です。その解釈は検索エンジンが行います。演算子を使っても、検索結果がサイトの全ページ一覧になるわけではありません。

どの検索サービスを対象にするのかを明確にしてください。Google Custom Searchエンジンは、ここで説明するGoogleのウェブ検索の収集とは別の取得元です。提供された根拠からは、Google Custom Search APIとの互換性は確認できません。APIとは、プログラム同士がデータをやり取りするための仕組みです。公開の質問には、カスタム検索エンジンの結果をExcelへ出力する方法を尋ねるものがあります。ただし、その質問はこのActorの対応を裏付けるものではありません。[表計算への出力に関する公開の質問 — 2026年8月11日に確認。投稿日は不明。対象はCustom Searchのみ](https://www.reddit.com/r/excel/comments/13daysg/does_anyone_know_how_i_can_export_google_search)

この方法で扱うのは、公開ウェブ検索の結果の記録です。マップの網羅範囲、検索ボリューム、ウェブ全体のインデックス、サイト所有者だけが参照できる記録へのアクセスを確認するものではありません。

## 2. 収集前に少量の入力を保存する

次の入力例を出発点にしてください。JSONは、名前の付いた値やリストを保存するテキスト形式です。

```json
{"country":"US","engines":["google"],"includeSponsoredResults":false,"language":"en","maxResultsPerExecutedQuery":10,"queries":["small business invoice approval workflow"],"safeSearch":true}
```

2. 収集前に少量の入力を保存する

この入力は、公開されているデフォルトビルドの入力規則に適合することを確認済みです。このガイドのための実行はしていません。確認できたのは、入力形式と使用可能な値です。Googleが検索結果を返したことを確認したわけではありません。[公開デフォルトビルド1.0.15 — 2026年10月25日に確認。入力規則を確認済み。有料実行は未実施](https://api.apify.com/v2/acts/mlmVX4amk2biciJaB/builds/default)

次の順序でサンプル値を置き換えてください。

1. `queries`のリスト全体を、使用する検索クエリに置き換えます。最初の確認ではクエリを1つにしてください。
2. この方法では、`engines`を`["google"]`のままにします。
3. 別の国や言語で検索する場合は、`country`と`language`を置き換えます。`US`は米国を指定します。`en`は、対応している場合に英語を指定します。
4. `maxResultsPerExecutedQuery`に保存上限を設定します。確認済みの設定範囲は1～100です。
5. 入力を保存する前に、`safeSearch`と`includeSponsoredResults`を確認します。

`safeSearch:true`は、対応する検索エンジンに露骨な内容の検索結果を除外するよう求めます。検索エンジンが地域ごとの独自ルールを適用する場合もあります。`includeSponsoredResults:false`は、広告の検索結果を除外します。有効にした場合、文書化された出力には、広告を示すための`isSponsored`と`advertiserDomain`の項目が含まれます。

入力全体を収集記録と一緒に保存してください。出力項目は入力記録の代わりにはなりません。特に、広告の検索結果に関する設定を残してください。別の読者も、どの結果を取得するよう指定したかを把握できます。

公開されている[検索結果をCSVにエクスポートするTask — 2026年10月25日に確認。公開されていることを確認済み。保存済み入力は未確認](https://apify.com/chronometrica/google-search-scraper/examples/export-search-results-to-csv)から始めることもできます。Taskは、Actorの入力設定を保存したプリセットです。使用前にサンプルクエリを置き換え、保存されているすべての設定を確認してください。公開ページの確認では、保存値が上の入力と一致するかどうかまでは確認していません。

## 3. エクスポート前に収集状態を確認する

以降は、読者が実施する手順の提案です。このガイドのために収集プログラムを実行した事実はありません。

収集を開始したら、データセットを使用可能と判断する前に、最終状態と実行概要を確認してください。データセットとは、保存された検索結果の行の集まりです。データセットと、収集中に何が起きたかを説明する実行概要の両方を保管してください。

次の順序で確認します。

1. 実行が正常に完了したか、失敗したか、中断されたかを確認します。
2. 収集が停止した理由の記録を読みます。
3. 報告されたGoogleの結果件数と、検索エンジン単位の障害情報を確認します。
4. 保存件数を指定した上限と比較します。
5. アクセス制限、フィルタリング、取得可能な結果の終了に関する情報を、エクスポートと一緒に保存します。

取得可能な結果の終了とは、そのリクエストで取得できる検索結果の末尾まで収集した状態です。Googleにほかのインデックス登録済みページがないことを証明するものではありません。

次の状態を区別してください。

| 記録された状態 | 報告できること | まだ確認できていないこと |
| --- | --- | --- |
| 上限に到達 | 指定した上限まで行を保存した | さらに取得できる結果があったかどうか |
| 取得可能な結果が終了 | 取得元から得られる結果が終わったため、収集が停止した | Googleまたはサイトの全体を網羅しているかどうか |
| 取得元でアクセスを制限、またはリクエストが失敗 | 収集中にアクセスまたは実行の問題が発生した | 条件に一致する結果が存在するかどうか |
| 検索結果をフィルタリング | フィルタリングが検索結果の集合に影響した | 除外された結果の内容 |
| 停止状態の記録がない、または不明確 | 理由は不明 | 上限に達する前に収集が終わった理由 |

指定した件数より少ない行数で実行が完了した場合は、その理由を説明する必要があります。それだけで失敗と判断することも、完全に網羅したと判断することもできません。

データセットと実行概要が一致しない場合は、元の記録を保管し、確認が済むまで表の使用を保留してください。上限に合わせるために空白行を追加してはいけません。実際の保存件数を、指定した上限で置き換えてはいけません。

## 4. 元の値を変えずにエクスポートする

収集が完了したデータセットから、CSVまたはJSONをエクスポートします。CSVは、表の値を通常はカンマで区切って保存するテキスト形式です。表計算用のコピーを編集する前に、ダウンロードした元のファイルを保管してください。

表計算ソフトのインポート機能でファイルを読み込みます。識別子とウェブアドレスの列は文字列に設定してください。元の日時文字列も、文字列の列で保持します。日付や数値への自動変換によって値の形式が変わると、元データとの比較が難しくなることがあります。

文書化されている次の結果項目を保持してください。

| 項目 | 保持または確認する内容 |
| --- | --- |
| `runId` | 検索結果の記録を収集の実行に関連付ける識別子 |
| `country` | その結果に記録された国の設定 |
| `language` | その結果に記録された言語の設定 |
| `safeSearch` | 露骨な内容を除外するフィルターの設定記録 |
| `engine` | その記録に対応する検索エンジン |
| `executedQuery` | その記録に対応する正確な検索クエリ |
| `page` | 記録された検索結果のページ |
| `rankOnPage` | そのページ内での順位の記録 |
| `rank` | その検索における結果の順位の記録 |
| `title` | 返された検索結果のタイトル |
| `canonicalUrl` | 返された、表記を正規化した候補アドレス |
| `resultDomain` | 返されたリンク先のドメイン |
| `snippet` | 返された検索結果の説明文 |
| `isSponsored` | 広告の検索結果かどうかを示す値 |
| `advertiserDomain` | 提供された場合に返される広告主のドメイン |
| `observedAt` | 検索結果を記録した時刻 |
| `schemaVersion` | 出力形式のバージョンを示す識別子 |

これらの項目は、確認済みの公開出力仕様に基づいています。[Chronometrica Google Search Scraper — 2026年10月25日に確認。文書化された項目に基づくもので、実行による検証は未実施](https://apify.com/chronometrica/google-search-scraper)

`canonicalUrl`は、表記を正規化した候補アドレスです。この名前だけでは、リンク先ページのHTMLにあるcanonicalタグを誰かが確認したことにはなりません。canonicalタグは、優先するページアドレスを示すものです。また、この項目から元のリンク文字列や元のアドレスが確認できるわけでもありません。

スニペットとは、検索結果に表示される説明文です。リンク先から取得した記事本文ではありません。スニペットが欠けていても、リンク先ページが空であるとは限りません。順位は検索結果の表示位置を記録するもので、訪問数やアクセス数を測るものではありません。

インポートした数行を元のファイルと照合してください。カンマ、引用符、改行、英語以外の文字を含む値があれば、それらも確認対象にします。各値が正しい列に収まっていることを確認してください。

CSVで欠損値と空文字列の違いを保持できない場合は、JSONを元データの参照用として残してください。表の中でもその区別が必要な場合は、別の確認用の列に記録します。

## 5. 検索結果の記録とリンク先を別々に数える

行数と、重複を除いたリンク先の数では、分かることが異なります。

検索結果の記録数は、保存した結果レコードの数を示します。重複を除いたリンク先の数は、明示した集計ルールに基づいて、返されたアドレスが何種類あるかを示します。

最初のエクスポートでは、`canonicalUrl`の文字列が完全に一致するものを同じリンク先として数えてください。これにより、パスやパラメーターが異なるアドレスを、断りなくまとめることを防げます。ただし、分かるのは返されたアドレスの種類の数です。各ページの同一性を別途検証した結果ではありません。

検索結果の記録表はそのまま保持してください。リンク先の一覧を作る場合は、別の作業用の表を使います。同じアドレスが異なる順位で2回表示された場合は、両方の記録とそれぞれの順位を残してください。

エクスポート行の重複は別の問題です。ファイルを2回インポートしたために同じ保存レコードが2回表示される場合は、そのインポートの誤りを調べてください。リンク先アドレスが同じという理由だけで、検索結果の記録を同一レコードの重複と判断してはいけません。

複数のエクスポートを統合する作業については、[検索クエリと順位の記録を失わずにBing検索のエクスポートを統合する方法](/ja/articles/bing%E6%A4%9C%E7%B4%A2%E7%B5%90%E6%9E%9C%E3%81%AE%E9%87%8D%E8%A4%87%E6%95%B4%E7%90%86/)を参照してください。このガイドの対象はBingのエクスポートです。検索結果の記録表とリンク先の表を分ける方法は、数え方の違いを理解するのに役立ちます。ただし、このGoogleの手順を実行で検証した根拠にはなりません。

どの集計でも欠損値を保持してください。順位が欠けている場合は不明であり、順位が0という意味ではありません。結果件数が欠けている場合も不明であり、0件と確認されたわけではありません。明示した収集範囲で、元の根拠が0件であることを裏付ける場合に限って0を記録してください。

## 6. 説明用の架空例：記録16件、リンク先15件

この具体例は、すべて説明用に作成した架空のものです。実行、時刻、検索結果の順位、リンク先アドレス、件数は、学習のために作ったものです。Actorのテスト結果でも、顧客の実績でもありません。

ある分析担当者が、Googleで「small business invoice approval workflow」（中小企業の請求書承認手順）というクエリを1つ使用します。国は米国、言語は英語を指定します。セーフサーチは有効にし、広告の検索結果は無効にします。

この架空の例に限り、提示した入力の保存上限10件を20件に変更します。収集では16件の記録が保存されます。架空の実行概要には、取得可能な結果が終了したと記載されています。

2件の記録で、同じアドレスが返されました。

| 架空の記録 | 検索エンジン | 順位 | 返されたアドレス | 記録時刻 |
| --- | --- | --- | --- | --- |
| 記録A | Google | 3 | `https://workflow.example/invoice-approval` | `2026-10-24T14:00:00Z` |
| 記録B | Google | 11 | `https://workflow.example/invoice-approval` | `2026-10-24T14:00:00Z` |

残り14件の記録は、すべて異なるアドレスです。上記の共通アドレスと一致するものもありません。

件数は次のように整合します。

- 検索結果の記録数：同じリンク先を持つ記録2件 ＋ その他の記録14件 ＝ 記録16件。
- 重複を除いたリンク先の数：共通のリンク先1件 ＋ その他のリンク先14件 ＝ リンク先15件。
- 未使用の保存枠：保存を許可した記録20件 − 保存した記録16件 ＝ 上限までの残り4件。

この4件分は、使われなかった保存枠です。存在が分かっている未取得の結果が4件あるという意味ではありません。保存上限からは、Googleで条件に一致する全検索結果の件数は分かりません。

この分析担当者の架空の収集記録は、次のとおりです。

| 項目 | 架空の記録値 |
| --- | --- |
| 検索クエリ | small business invoice approval workflow |
| 検索エンジン | Google |
| 国と言語 | 米国と英語を指定 |
| 広告の検索結果 | 除外 |
| セーフサーチ | 使用を指定 |
| 指定した保存上限 | 記録20件 |
| 保存行数 | 記録16件 |
| 返されたリンク先の数（重複除外） | 完全一致で区別したアドレス文字列15種類 |
| 確認時刻 | `2026-10-24T14:00:00Z` |
| 停止状態 | 取得可能な結果が終了 |

この架空の例では、収集範囲を次のように説明できます。

### 6. 説明用の架空例：記録16件、リンク先15件

このGoogle検索クエリでは、国を米国、言語を英語に設定し、セーフサーチを有効にして、広告の検索結果を除外したうえで、最大20件の記録の収集を指定しました。記録された確認時刻2026-10-24T14:00:00Zに、16件の記録が保存されました。返されたリンク先アドレスは、重複を除くと15件でした。実行概要には、取得可能な結果が終了したと記載されています。このエクスポートは、Googleまたはサイトの全体を網羅したことを示すものではありません。

この例を「20件の結果が返された」と説明してはいけません。「インデックス登録済みの全ページ」と説明してもいけません。16を上限の20で割っても、保存行数を保存可能な枠と比較するだけです。Googleの検索結果をどれだけ網羅したかは測れません。

## 7. 表を使用可能と判断し、収集範囲の限界を記録する

ファイルを報告書や別の処理に使う前に、次の受け入れ確認を行ってください。

1. 依頼内容と照合します。検索エンジン、実行したクエリ、国、言語、保存した入力設定を確認してください。
2. 行数の整合性を確認します。元のデータセットの件数と、インポートした検索結果の記録数を比較してください。差があれば説明します。
3. 各項目を確認します。識別子、アドレス、検索クエリの文字列、時刻がインポート後も保持されていることを確認してください。
4. 件数を分けて報告します。アドレスの集計ルールを明示し、検索結果の記録数と、重複を除いたリンク先の数を報告してください。
5. 不明な値を保持します。元データで区別できる場合は、欠損値を0や空文字列と区別して残してください。
6. 停止の根拠を添えます。最終状態、判明している障害、収集が終了した理由を記録してください。
7. 収集範囲の説明を書きます。保存上限、保存行数、重複を除いたリンク先の数、設定、実際の確認時刻、取得元の制約を明記してください。

検索結果の記録時刻が欠けている場合は、その旨を明記してください。自分で確認した時刻を残す場合は、自分の確認時刻であることを示します。取得元から提供された時刻であるかのように、`observedAt`へ入れてはいけません。

表が整っていても、リンク先ページにアクセスできることや、目的に関連することの証明にはなりません。次にページを収集する場合は、リンク先を別途確認してください。[Bingのクロールキューのガイド](/ja/articles/bing-%E6%A4%9C%E7%B4%A2%E7%B5%90%E6%9E%9C%E3%81%8B%E3%82%89%E3%81%AE%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E3%82%AD%E3%83%A5%E3%83%BC%E4%BD%9C%E6%88%90/)では、その後の確認作業を説明しています。このガイドの検索元はBingです。リンク先を採用するか、除外するか、確認未了とするかを理解するために参照してください。

別のクエリを追加するのは、明示した目的に必要な場合だけにしてください。別のテーマの用語や市場を調べる必要がある場合などです。その検索も、条件を定めた別のサンプルとして扱います。検索を繰り返しても、完全に網羅したことにはなりません。

## 範囲を広げる前に、1回分のエクスポートを確認する

まずは[Chronometrica Google Search Scraper — 2026年10月25日に入出力仕様を確認。このガイドのための有料実行は未実施](https://apify.com/chronometrica/google-search-scraper)で、検索クエリを1つに絞り、保存上限を少なく設定してください。サンプル値を置き換え、入力を保存します。収集が完了したら、内容を確認してからエクスポートしてください。

行数、保持された項目、リンク先の数、収集停止の根拠に整合性があれば、その表を使用できます。そのうえで、条件を定めた別の検索、リンク先の確認、サイト所有者だけが参照できる記録のどれが必要かを判断してください。対象範囲の説明をファイルに添えて、収集範囲の限界が伝わるようにします。

## 出典と参考資料

- [Googleのサイト内検索ガイド — 2026年10月25日に確認。サイト検索結果は網羅的ではなく、サイトの全ページ一覧であることを示すものではありません](https://developers.google.com/search/docs/monitor-debug/search-operators/all-search-site)
- [Chronometrica Google Search Scraper — 2026年10月25日に確認。公開文書の入力項目と結果項目に基づくもので、有料の実行テストは未実施](https://apify.com/chronometrica/google-search-scraper)
- [公開デフォルトビルド1.0.15 — 2026年10月25日に確認。入力規則と対応する出力仕様を確認済み。サンプルは未実行](https://api.apify.com/v2/acts/mlmVX4amk2biciJaB/builds/default)
- [検索結果をCSVにエクスポートするTask — 2026年10月25日に確認。公開ページとプリセットの存在を確認済み。保存済み入力の確認と実行は未実施](https://apify.com/chronometrica/google-search-scraper/examples/export-search-results-to-csv)
- [Custom Searchの表計算への出力に関する公開の質問 — 2026年8月11日に確認。投稿日は不明。1件の質問からActorとの互換性は確認できません](https://www.reddit.com/r/excel/comments/13daysg/does_anyone_know_how_i_can_export_google_search)