facebookのバカ毛ページで「なにかやってほしい実験があればリクエストどうぞ!」と書いたところ

プルダウンのメニューをクローラーは辿れるのか?

という話をいただきました。

随分前から「GoogleはJavaScriptを読めるよ!」といったような話はあるものの、実際にはちょっとやめておいたほうがいいんじゃないかとかそんな話もあり、結局どっちなんだろう、ということで簡単に検証してみました。

 

検証方法

至ってシンプル

実験ページ(/lab/baka-ke_lab.php)にこんな形式のプルダウンを設定しました。

ソースは以下の通り。

新実験:風雲グーグル城・始まる。
<form name=”test”>
<select name=”linkselect” onChange=”fuuun()”>
<option value=””>選択して下さい</option>
<option value=”https://www.baka-ke.com/lab/sonoichi.php”>実験室</option>
<option value=”https://www.baka-ke.com/lab/part2.php”>こちらもどうぞ</option>
<option value=”https://www.baka-ke.com/lab/three.php”>最後の砦</option>
</select>
</form>

「Googleはファイル名からURLを読み取る」みたいな話もどこかで聞いたような気がするのでファイル名も念のため連番にしないようにしました。

あとはプルダウン設定ページと、各飛び先ページのログを取得。
しばし待つ。

 

クローラーログ経緯

5/28 23:15 プルダウン設定

 

2012/5/29 0:37 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php 66.249.67.71
2012/5/30 15:19 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php 66.249.67.71
2012/5/30 15:39 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php?img=link 66.249.67.71
2012/6/2 10:14 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php 66.249.67.71
2012/6/2 20:55 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php?img=link 66.249.67.71
2012/6/4 20:34 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php 66.249.67.71
2012/6/5 0:57 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/baka-ke_lab.php?img=link 66.249.67.71
2012/6/5 17:21 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/part2.php 66.249.67.71
2012/6/5 17:31 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/sonoichi.php 66.249.67.71
2012/6/5 18:26 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) /lab/three.php 66.249.67.71

設置後の5/29~6/4まで何回かプルダウン設定ページに来ているものの、飛び先に辿っている様子はありませんでした。
ただ、約1週間後の6/5に唐突に遷移。約1時間以内に3ページを回っているので一旦回るまでのデータを取得して・・・みたいな動きがあったのかも知れませんね。
直接のリンクであればもう少し遷移が早そうな気もします。

 

URLの記述だけを読んでクローラーが遷移したのではないか?

JavaScriptを読んだのではなく、ソースに書かれているURLの記述を元にクローラーが遷移したのではないかという説も考えたのですが、以前やったサイテーション実験でサイト内のサイテーションは無効になるという仮説を設定中。現段階ではページ内のテキストとしてのURLを読んだ、という可能性は低いと考えています。

 

まとめ

GoogleはJavaScriptで遷移するプルダウンメニュー(飛び先)を読む。

ただし、公式のクローラーページには

JavaScript、Cookie、セッション ID、フレーム、DHTML、Flash などの機能が使用されていると、検索エンジンによるサイトのクロールが困難になることがあります。
クロールを完了できませんでした – ウェブマスター ツール ヘルプ

といったような記述もあるので、通常のaタグでのリンクを設置できるのであればスタンダードにフォローした方がいいのかも知れませんね。
実際、辿るまでにちょっと時間がかかりましたし・・・


コメントをどうぞ