サイト内のページを巡回していくクローラーをご存知ですか?
このクローラーとは、Googleの検索エンジンにデータを登録(インデックス)するために情報収集を目的としたボットとも呼ばれるもので、主にインデックスされているページから外部・内部のリンクを辿って巡回していきます。
そして、サイト管理者としてはこのクローラーの最適化を行うこともまた必要であり、理由としては…不要なクロールを制御することで、重要なページを優先させて巡回させ、正しく内容を伝えることはもちろん、キャッシュを更新することで修正箇所などをすぐに検索結果に反映することも可能となります。(場合によってはクロールの申請も必要。)
というのも、クローラーがしっかりとページの更新箇所など前回クロールしたデータとの差分がないかどうか?を正しく理解しなければ、インデックスにも反映されないため、当然公開されているページも古いままとなってしまいます。
もちろんこれは新しいサーチコンソールに実装されている“URL検査”を利用してインデックスを促すことも可能ですが、質の低い不要なページをインデックスした状態だと場合によってはサイト全体のSEOにも影響することから、重要なページを中心にクロールしてもらう必要があるというわけです。
要はクローリングの最適化(クローラビリティ)が重要であり、検索結果に表示させる必要のないページにクロールさせないことがポイントとなります。例えばお問い合わせフォームなどが良い例で、こういったページはインデックスさせる必要がありませんのでnoindexで対応します。
では今回は、このクローラーの意味やクリーラビリティについて詳しくご説明していきたいと思います。
目次
クローラーとは?
まずクローラーとは、Web上の無数にあるサイト・ページをクロール(巡回)するボットのことを意味し、Googleのクローラーの場合だと情報を収集して各種検索クエリの答えとして相応しいコンテンツを200以上もの要素からランキングして検索結果に返しています。
また、クローラーにはGoogleの検索エンジンに限らず様々なボットが存在し、BingやBaidu以外にもインターネットアーカイブといったWebページの過去をキャッシュしていくクローラーもあり、詳しくは後述しますが、こういった過去のキャッシュを残したくない場合は、ボットを指定してクロールのブロックといった制御を行う必要があります。
他にもGoogleだけでも検索用のボット以外にも広告用や画像用、各種モバイルやスマホ用などのボットなどが存在します。
参考:Google のクローラ(ユーザー エージェント) – Search Console ヘルプ
ちなみに、アナリティクスの管理画面にはクローラーの巡回をひとつのアクセスとして計測しない設定があり、“設定”>“ビュー”>“ビューの設定”から指定することができます。
※正しいアクセス解析を行うためにもチェックを入れておきましょう。
クローラーの対策
上記のように、しっかりと作り込まれたご自身のページは、クロールされることによって読み込まれ、データベースへと保存されなければ検索結果にも表示されることはありません。
そのため、クローラー対策の基本は重要なページを優先的に巡回してもらうことです。
それを行うためには“robots.txt”や“サイトマップ(sitemap.xml)”、さらに内部リンクの精査といった基本的な要素をしっかりと理解しておく必要があります。
ちなみに重要なページというのは、しっかりとキーワード選定を行い、それに伴うユーザーに役立つコンテンツを作り込んであるページを指し、その他インデックスさせる必要のないページに関してはnoindexで対応しましょう。
つまり検索順位を計測することも非常に重要で、ターゲットキーワードで上位表示できてなければリライトなりコンテンツの改善を行うべきで、質の低いページが存在しているとサイト全体の足かせとなってしまうため、流入キーワードも参考に記事の統合なども視野に入れてください。
ここで例えば、どこからもリンクされていない状態の孤立したページがあったとします。
そしてそのページがいくら重要なページだったとしてもクローラーが巡回する手段がなければクロールもされることがありません。
ということは、いくら検索しても順位が付かない状態(インデックスされない)となってしまうわけです。
そうならないためにも重要なページに内部リンクを集めるといった手段が行われてきたわけですが、こちらについてもまた後ほど詳しくご説明します。
クローラビリティとは
では、次にクローラビリティについてご説明していきたいと思います。
とは言っても先ほどご説明したようなクロールの最適化のことを意味するわけですが、そもそもユーザビリティやアクセシビリティといった“(ability)アビリティ”とは能力といった意味を持ち、ユーザビリティの場合だと使い勝手などと捉えられるように、クローラビリティもクロールしやすい状態といった意味で広く使用されています。
つまりは、クローラー対策はクローラビリティを最適化させることが目的となり、検索される必要のない(インデックスされる必要のない)ページは予め削除しておくことも大切ですが、場合によっては申込みページなど必要なページもあり、そういったコンテンツには先ほどもご説明した通り“noindex”の付与やクロールさせないように指示しておくことも重要となります。
その指示というのが、以下にご説明する“robots.txt”や“サイトマップ(sitemap.xml)”といったファイルによるもので、強制力のないものもあるので、“noindex”や極力内部リンクを設置しないといった対策が必要です。
内部リンクの精査
ではまず、内部リンクから考えてみましょう。
先ほどもご説明した通りクローラーは外部リンク以外にも下記のようなリンクを辿って巡回してきます。
- グローバルメニュー
- テンプレートに配置したアーカイブからのリンク
- 記事内に添えられたテキストリンク
- フッター部分に表示された簡易サイトマップ
そして、その際重要となるのがアンカーテキストで、例えば“こちら”といった文字にリンクを設定していると…検索エンジンもその先に何が書かれているのか?伝わりにくい状態となってしまいます。
それは検索エンジンだけでなく閲覧ユーザーにとっても同じです。
こういったクローラビリティを内部リンクから考える場合は、ユーザービリティにも考慮する必要があり、どこに何が用意されているのか?こういったユーザーの利便性に基づいた考え方で内部リンクを設置することを念頭に置いておけば、単純に重要なページ(上位化させたいページ)に内部リンクを集中させるといった施策にはならないはずです。
そのため、内部リンクの基本的な考え方としては…関連する情報を提供してあげるということが大切で、今現在せっかく集中して読んでくれているユーザーに対して無理に広げたコンテンツを盛り込むよりも、「必要な方はこちらもご覧ください。」といったユーザーが疑問に思うかもしれない箇所に適宜リンクを設置してあげることが重要です。
そうなれば、リンク前後の文脈も不自然になることもなく、クローラーは何らかの関連するコンテンツが存在するとして、そのリンクを辿ってインデックスしていくことでしょう。
リンクはアンカーテキストで
続いて、クローラビリティを考慮するとリンクは画像ではなくアンカーテキストを使用するようにしましょう。
というのも、クローラーはあくまで機械ですので人間のように目視してコンテンツを把握していくわけではありません。
そのため、リンクに含まれる内容は伝わりやすいテキストで設置するようにし、それによってその先にどういった内容のコンテンツがあるのか?クローラーにとっても伝わりやすくなり、関連するコンテンツの有無も理解することによって、あくまで推測ですが…詳しい執筆者・専門性の高いコンテンツといった評価にも期待できるかもしれません。
クローラビリティとは単純にページ間の巡回だけでなく、正しく内容を伝えることも重要となるため、こういったリンクの設定や正しいタグの使い方も重要視するべきでしょう。(アンカーテキストの分散も考慮してください。)
はじめはクロールを申請する
上記のように、サイト・ブログをある程度運営していれば、調整する内部リンクも増えてくるかと思われますが、立ち上げた当初はクロールが巡回してくる術がありません。
こういった場合はクロールの申請をすることによって、ご自身のサイトの存在を検索エンジンに知ってもらう・見つけてもらうことになります。
方法としては、“Fetch as google”といった以前のサーチコンソールに実装されていた機能を使っていたんですが、新しいサーチコンソールになってからは“URL検査”といった機能を使用することとなります。
これは本来、指定したURLのページが現在どういた状況なのかをチェックするもので、そこでインデックスされていないようでしたらクロールを促すこともでき、ページの内容に修正など更新された情報などがあっても再度クロールを申請することも可能です。
不要なクロールを制御する
では、続いてクロールの必要がないページからクローラーの巡回を制御する方法についてご説明していきます。
これは、先ほどもご説明した通りインデックスの必要がないページにクロールが巡回しても意味がないように、不要なページへのクロールをブロックして重要なページを優先させることが定説で、以前は“クロールバジェット”といったクロールの回数などが存在するとも言われていて、極端に気にしていた方も多かったのではないでしょうか?
※“クロールバジェット”について詳しくはGoogleウェブマスター向け公式ブログから公表されている「Googlebot のクロール バジェットとは?」を参考にしてみてください。
どちらにしても、正しくコンテンツ内容を伝えるためには、こういったクロールの最適化を行う必要があり、重要なページを優先的にクロールしてもらうことが理想となります。
そして、質の低いページがサイト内に存在することで、サイト全体の価値が下がる可能性も考えられるため、クロールが不要なページに関してはそもそも“noindex”など予め対応しておきましょう。
サイトマップ(sitemap.xml)による管理
まず、クロールの制御を行うために必要となるのが“サイトマップ”で、閲覧ユーザーのために用意するhtmlページも内部リンクといった意味ではクローラビリティにもなるわけですが、ここではクローラー用にサイト内のページリストを記述する“sitemap.xml”のことを指します。
そして、クローラーはこの“sitemap.xml”というファイルに記述されているページ一覧を参考にサイト内を巡回してインデックスしていくわけです。
そのため、クロールしてほしい重要なページを記述し、他には重要度や更新頻度も一緒に記述してサーバーにアップしておきます。
つまりわざわざ必要のないページまでも記述する必要がないというわけですね。
ただし、この“sitemap.xml”にはクローラーに対しての絶対的な強制力を持つわけではなく、あくまでヒントとしてサイト内を巡回するため、例えば内部リンクが少なく、クローラーが巡回する頻度が低い場合などに役立つファイルという意味もあり、場合によっては“noindex”や後述する“robots.txt”を併用してクロールの制御を行うことが重要となります。
もちろん、クローラーは内部・外部からのリンクを辿って巡回して行きますから、そういったクローリングによってインデックスさせたくない場合は“noindex”の付与が必要です。
robots.txtによる管理
次に、クローラーに対するクロールのブロック(または一部許可)を指定する“robotx.txt”というファイルについてです。
こちらは、指示をするボットを“User-agent”によって指定し、ページ単位やディレクトリ単位でブロック“Disallow”、または許可“Allow”するタグを組み合わせてクローリングを制御します。(任意で“sitemap.xml”へのパスも記載。)
ここで、なぜ許可を意味する“Allow”があるのかというと…基本的にはクローラーは全てのページを巡回していきますが、例えばブロックしたディレクトリがあるものの、その中の数ページだけはインデックスさせたい、という場合に“Disallow”と組み合わせて指定することで、クロールの動きを制御することが可能となります。
この“robotx.txt”に関しては特にクローラーのブロックを指定する必要がなければ用意しなくてもかまいません。
まとめ
今回は、検索エンジンのデータベースに保存するためにサイト内を巡回する“クローラー”についてご説明しました。
このようにクローラーはサイト内のページの存在はもちろん、既存の保存データとの差分を認識し、新しい情報としてキャッシュを更新して検索結果に反映させていきます。
そのため、サイトを管理・運営していくためにはクローラビリティの最適化も念頭に置くことが重要となり、トラフィックを右肩上がりで伸ばしていくためにはシンプルな階層が理想となるわけです。
記事を増やせば増やすほどにトラフィックが減っていく…といった状況に陥らないためにも、しっかりとクローラーの動きを制御して、必要のないページに関しては削除や統合、または“noindex”によって対応するようにしましょう。
「キーワードファインダー」
キーワード選定でお悩みですか?
「キーワードファインダー」なら、検索ボリュームから順位チェック、関連語や新しいキーワードの発見など、アクセスを伸ばすために重要なキーワード選定を自動取得、一括管理が可能!
また、自動取得したキーワードは、ご自身のサイトだけでなく競合の順位も取得します。この整理された情報を元にあなたの集客経路の拡大にお役立てください!
関連記事
検索順位を改善するには正しいSEOの知識が必要です