私は、Googleがインデックスに登録したすべてのリンクを取得して、CSVファイルにエクスポートする方法を探しています。最近、Googleでインデックスに登録されたページが実際にあるよりもはるかに多くなり、各検索結果ページを表示する必要なく、これらのすべてのページがどこから来ているのかを見つけたいと思っています。
私は、Googleがインデックスに登録したすべてのリンクを取得して、CSVファイルにエクスポートする方法を探しています。最近、Googleでインデックスに登録されたページが実際にあるよりもはるかに多くなり、各検索結果ページを表示する必要なく、これらのすべてのページがどこから来ているのかを見つけたいと思っています。
回答:
残念ながら、Googleのすべてのインデックス付きページの完全なリストを取得する方法はありません。milo5bのソリューションでさえ、最大で1,000のURLしか得られません。
重複するコンテンツの問題があるようです。ウェブマスターツールで、[ヘルス]> [インデックスステータス]をチェックすると、時間の経過に伴ってインデックスに登録されたページの累計が表示されます。ある時点でグラフが大きく飛躍した場合は、サイトの特定の変更がジャンプのきっかけになった場合、問題を解決できる可能性があります。
Bingのウェブマスターツールを使用してみることもできます。彼らはあなたがURLを見つけるのを助けることができるインデックスエクスプローラーを持っています。検索エンジンのスパイダーは非常に似ているので、Googleがこれらのリンクを見つけた場合、Bingもおそらくそうしました。
Bingにはほとんどのデータをエクスポートする方法があると思いましたが、ざっと見ただけでは見つかりません。ただし、APIがあるため、おそらくそれを使用してすべてを抽出できます。
結局、site:domain.com/foo/bar/を検索して問題のあるサブフォルダーまでドリルダウンしましたが、検索で、検索結果をExcelファイルに取得する方法に出くわしました。
Googleドキュメントのスプレッドシートを開き、次の式を使用します。
=importXml("www.google.com/search?q=site:domain.com&num=100&start=1"; "//cite")
最初の100件の結果のみを取得しますが、次の100件を取得するために再度使用できます。開始変数を変更するだけです。
=importXml("www.google.com/search?q=site:domain.com&num=100&start=100"; "//cite")
これは、前述のDisgruntledGoatによって言及されたように、最大1000の結果を提供しますが、特定のサブディレクトリからのリンクを提供するように式を変更できます。
= importXml( "www.google.com/search?q=site:domain.com/foo/bar/&num=100&start=1"; "// cite")