クローラーとは、Googleの検索エンジンをはじめとするロボットがいろいろなサイトの情報を集めるために使用しているもののことです。
別名、Googlebotとも呼ばれ、ページを読み込み(クロールする)、サイト情報を収集格納(インデックス)することで、そのページを検索結果に表示するために必須の役割を担っています。
SEOにおいて、検索結果に対策中のページが現れないことは致命的なので、クローラーが担う役割は覚えておいた方が良いと言えるでしょう。
クローリング状況の確認はSearch Consoleで行う
クローラーはページをインデックスすることで、検索結果にページを表示させるという役割があります。
なので、クローラーがサイト内のどのページを読み込んでいるかについては、SEO対策において改善策を練るための指針の1つになります。
なお、クローラーがサイトに対してどういう動きをしているのかは、Search Consoleの項目で確認が可能です。
例えば、クロールエラーという項目では、クローラーがページをクロールした際のエラーの発生有無を確認することができる等です。
また、クロールの統計情報という項目では、一日に何回クローラーがページをクロールしたかを確認することができます。
このように、Search Consoleを用いることで、クローラーの行動に関して詳細な情報を入手することが可能です。
クローラー最適化を行う目的・必要性とクロールバジェット
Googleからすれば、クロールを行うにもリソースを消費するため、クローリングはGoogleにとってコストと言えます。
Googleにはクロールバジェット(クロール上限値)というものが存在します。
クロールバジェットとは、Googleが行うクローリングの上限値のようなものです。
つまり、クロールバジェットを超える量の情報が存在する場合、クロールされないページが発生します。
その場合、検索者に届けたい重要なページがクロールされなかったり、優先順位が低いページがクロールされた結果、サイト内に優れたコンテンツが少ないと判断され、評価が落ちてしまう可能性があります。
このような場合は、クロールの最適化が必要といえるでしょう。
ただし、クロールバジェットを超える量のページ数があるケースとは、データベースサイトやECサイト等、規格外の規模を持つ例外的なサイトのみと考えられています。
従って、一般的な規模のコーポレートサイト等は、クロールバジェットを気にする必要は無いと言えます。
クローラー最適化の方向性
一部の例外的な規模を持つサイトにおいては、優先順位をつけるために、クローラーの最適化が必要になります。
最適化の方法とは、重要なページは確実にクロールさせる一方、検索者にとって重要ではないページをクロールさせないことです。
これは、検索者にとって重要なページがクロールされなくなることを防ぐため、優先順位の低いページを後回しにするという意図に基づきます。
Googlebotにはユーザーと同じコンテンツを見せる
ユーザーとGooglebotに異なるコンテンツを見せることは、Googleのガイドラインに違反します。(悪質なものはペナルティを課されることがあります)
ユーザーが見えているコンテンツと同じものがGooglebotにも見えているかどうかを確認しましょう。
確認方法としては以下のものがあります。
・Search ConsoleのFetch as Googleにてレンダリングを行う
・Pagespeed insightsによるレンダリングプレビューを見る
https://developers.google.com/speed/pagespeed/insights/?hl=ja
・Chrome Developer toolなどから、ユーザーエージェントをGooglebotに変更して確認する
(Chromeであれば、Network Condition内のUser agentをGooglebotに変更可能)
なお、GoogleはGooglebotのユーザーエージェントは公開していますが、IPは公開していません。
Googlebot一覧
https://support.google.com/webmasters/answer/1061943?hl=ja
どうしてもアクセス制限を行いたい場合はユーザーエージェントによる制限を行い、IPによる調整は極力避けることをおすすめします。
繰り返しになりますが、ユーザーとGooglebotに同じコンテンツを見せるのが基本です。
もしユーザーには見えているのにGooglebotには見えないページ(たとえば404ページが表示されたり、Googlebotだけリダイレクトされてしまうなど)があったとすれば、そのページは検索結果に表れることはありません。
不要なページにクローラーを辿らせない
不要なページにクローラーを辿らせない場合、リンクに rel= “nofollow” の設定が必要です。
rel= “nofollow”とは、検索エンジンに対して、指定したページを読み込ませないための設定のことです。
robots.txtで不要な領域全体へのクロールを禁止する
robots.txtとは、指定したページを検索エンジンに読み込ませないためのファイルのことです。
これは rel= “nofollow”と意味は同じですが、より範囲が広く、ファイル全体を読み込ませないようにすることができます。
不要なページはインデックスさせない
クローラーをブロックすることが難しい場合や適切でない場合は、noindexによってインデックスさせないよう指示したり、正規ページが別にある場合はcanonicalによる正規化を行うことができます。
まとめ
クロールバジェットは余程の規模のサイトや、パラメータを用いた複雑構造等でない限り、大きく意識する必要はないと言えます。
ただし、重要なページがクロール・インデックスされているかどうかは定期的なチェックをおすすめします。