はてなスターのスターコメントは検索エンジンの検索対象になりますか? クロールされるのでしょうか。

対象になる場合は実例を交えて解説を、対象にならない場合は技術的に解説をお願いします。

回答の条件
  • 1人1回まで
  • 13歳以上
  • 登録:2012/01/17 06:58:37
  • 終了:2012/01/24 00:12:58

ベストアンサー

id:a-kuma3 No.2

a-kuma3回答回数4548ベストアンサー獲得回数18972012/01/17 13:57:32

ポイント60pt

ウィルスのスキャン中など、PC が重いときなどにページの表示を見ていると分かりますが、
スターはページがあらかた表示された後に現れます。
ページのレイアウト通りに HTML で埋め込まれているのではなく、javascript で、ページの読み込みが終わった後にスターの情報を取りに行っているようです。
今どきのクローラーは、javascript の動作まで追いかけるようですが、多分、簡単なコードしか追えないと思います。


はてなのソースを追ってみました。
それぞれのページには、以下の外部スクリプトの読み込みがあります。
<script type="text/javascript" src="http://s.hatena.ne.jp/js/HatenaStar.js?222" charset="utf-8"></script>

この中のスクリプトでは、 Hatena.Star.WindowObserver オブジェクトが、ページの表示完了を待ち合わせて、
最終的に Hatena.Star.EntryLoader オブジェクトの getStarEntries() というメソッドが、
以下の URL へリクエストを出します。
http://s.hatena.ne.jp/entries.json

パラメータが幾つか付きますが、uri というパラメータがスターをつける対象の URI です。
例えば、ハイクのパーマリンクだったり、人力検索の質問や回答のパーマリンクです。

URL を作るロジックを簡略化すると、以下のような感じになります。

Hatena.Star.BaseURL = 'http://s.hatena.ne.jp/';

// スター取得する対象の分だけ、uri パラメータをくっつける
for (var i = 0; i < entries.length; i++) {
    url += 'uri=' + encodeURIComponent(entries[i].uri) + '&';
}

new Ten.JSONP(url, c, 'receiveStarEntries');        // JSONP へリクエストを出す

複雑、というほどではありませんが、変数の参照をしたり、文字列の結合があったりと、
それなりにきちんと javascript のコードを処理しなくちゃいけなくなります。

データを読み込んだ後、receiveStarEntries というメソッドでデータは処理されます。
コメントは、HTML のテキストや属性値に直接かかれるのではなく、Hatena.Star.Comment オブジェクトのプロパティとして保持されます。
保持されたデータは、吹き出しのクリックの際に javascript で、文字として書きだされます。

引用スターの文字列も同様に、Hatera.Star.Star オブジェクトのプロパティとして保持され、
スターの mouseover イベントで javascript によって表示されます。


ハイクの例です。
http://h.hatena.ne.jp/Kumappus/243586774554484755
のエントリを表示するときのスターを取得するための URL が↓になります。
http://s.hatena.ne.jp/entries.json?uri=http%3A%2F%2Fh.hatena.ne.jp%2FKumappus%2F243586774554484755&&callback=Ten.JSONP.callback&Tue%20Jan%2017%202012%2011:24:21%20GMT+0900

応答は、JSON 形式で返ります。

{
"entries":[
    {
    "stars":[
        {"quote":"","name":"princo_matsuri"},
        27,
        {"quote":"","name":"zzteralin"}
        ],
    "can_comment":1,
    "comments":[
        {
        "body":"\u30c6\u30ec\u30d3\u96d1\u8a8c\u306e\u8868\u7d19\u8f09\u3063\u3066\u3066\u8208\u596e\uff01",
        "name":"hutuhiko",
        "id":"9235340089995107830"
        },
        {
        "body":"\u306a\u3093\u304b\u30b4\u30fc\u30ab\u30a4\u30b8\u30e3\u30fc\u3068\u5171\u6f14\u3059\u308b\u3089\u3057\u3044\u306d\u3002",
        "name":"Kumappus",
        "id":"11542097892911398355"
        }
        ],
    "colored_stars":[
        {
        "stars":[
            {"quote":"","name":"a-kuma3"}
            ],
        "color":"green"
        }
        ],
    "uri":"http://h.hatena.ne.jp/Kumappus/243586774554484755"
    }
    ],
"can_comment":1,
"rks":"e17e0fa622559b9dff9d0bd5de6ee01e96e2d143"
}

スターコメントは、"comments" に、コメント、はてなID 、コメントのID が書き込んだ順番で入ってきます。
コメントは、Unicode エスケープシーケンスで表現されています。


人力検索の例です。
http://q.hatena.ne.jp/1326705849
の質問では、スターを取得するための URL は、こんな感じです。
質問と回答の数だけ uri パラメータが並びます。
http://s.hatena.ne.jp/entries.json?uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127695&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23ac12488&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127699&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23ac12492&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127700&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23ac12493&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127746&&callback=Ten.JSONP.callback&Tue%20Jan%2017%202012%2010:38:27%20GMT+0900

長いので、ひとつの回答についてるスターの情報だけ取り出してみます。
http://q.hatena.ne.jp/1326705849#a1127699
  ↓
http://s.hatena.ne.jp/entries.json?uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127699&callback=Ten.JSONP.callback&Tue%20Jan%2017%202012%2010:38:27%20GMT+0900

{
"entries":
    [
    {
    "stars": [
        {"quote":"","name":"taiki-sonic-1110"},
        {"quote":"\u77ed\u6587\u3059\u307f\u307e\u305b\u3093","name":"a-kuma3"},
        {"quote":"\u81ea\u5206\u304b\u3089\u898b\u3066\u3053\u306e\u56de\u7b54\u306f\u9577\u6587\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\r\u003cbr /\u003e\u300c\u77ed\u6587\u3059\u307f\u307e\u305b\u3093\uff08^^;;\u300d","name":"ken3memo"}
        ],
    "can_comment":1,
    "comments":[],
    "uri":"http://q.hatena.ne.jp/1326705849#a1127699"
    }
    ],
"can_comment":1,
"rks":"e17e0fa622559b9dff9d0bd5de6ee01e96e2d143"
}

人力検索では、スターコメントが無いので "comments" は空っぽです。
引用スターの文字列の部分が、"stars" の "quote" に入ってきます。



クローラーが javascript を解釈するみたいな情報が、チラホラあったので
例にあげたハイクのエントリを、幾つかのエンジンで探してみましたが、やっぱり駄目ですね。


https://www.google.com/search?num=100&q=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+site%3Ah.hatena.ne.jp&oq=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+site%3Ah.hatena.ne.jp

http://search.yahoo.co.jp/search?p=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99

http://search.goo.ne.jp/web.jsp?MT=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99&STYPE=web&SH=1&IE=UTF-8&OE=UTF-8&from=gootop

http://www.bing.com/search?q=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99

http://www.baidu.jp/s?tn=baidujp&ie=utf-8&cl=3&ct=262144&wd=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99


クローラーが解釈できるのは、せいぜい、javascript で展開するアンカーだけのようです。
javascript によって作成される動的なメニューを解釈できないと、サイト内のクロールができないからでしょう。


# 長文、すみません =)

他1件のコメントを見る
id:a-kuma3

スターをロードした時にはスターコメントがあれば吹き出しが薄いオレンジになっていて、その時点でスターコメントの文字列はロードされているのでしょうか?

その時点で、既にロードされてます。

最近のFirefox だと、ctrl + shift + K で、ブラウザが出したリクエストとか、エラーの状況がプラグインなしで確認できます。

クローラーが javascript を、どこまで解釈するかは、コストとの兼ね合いなんだと、想像します。
トップページの javascript で表示されているメニューを解釈できないと、そのサイトのページをカバーできないので、検索範囲が狭くなってしまう、というのが検索エンジンにとって無視できない問題なのでしょう。

それに比べて、1ページの中で javascript が展開する文字列は、HTML で性的に展開される情報に比べて、少ないと思われるので、そこに処理コスト(と、開発のコスト)をかけていないのでしょう。

それに、javascript のオブジェクトが抱えている文字列が、ページのコンテンツの一部であるかどうか、というのは、プログラムで判定しにくい、ということもあります。

スターコメントは、明らかにコンテンツの一部だと思いますが、HTML 要素の属性や ID がコンテンツかどうか、というのは、判断が難しいと思います(特に、英語圏)。


想像ですが、クローラーの javascript の解釈は、ユーザのアクションが伴うものかどうかの判定もしてないと思います。
トップページのメニュー然り。

多分、<script> もクロールの対象にして、URL と思しき文字列があったら、アンカーに準ずる処理をしているのではないでしょうか。


因みに、最近の Firefox だと、ctrl + shift + K で、ブラウザが出したリクエストとか、エラーの状況が、プラグイン無しで確認できます。

# 「ポイントください」の次には、「長文、失礼しました」が流行る(わけない =)

2012/01/18 01:47:33
id:fmht7

#個人的には「ポイントください」の方が清々しくて清々してて好きです:-D

2012/01/18 01:50:22

その他の回答(2件)

id:taknt No.1

きゃづみぃ回答回数13539ベストアンサー獲得回数11982012/01/17 09:06:39

ポイント30pt

スターにコメントがついたページのソースを見てみると

<p><a href="http://labs.translated.net/language-identifier/" target="_blank">http://labs.translated.net/language-identifier/</a><br /><br />前は ゼロックスのを使ってたけど、最近 使えなくなったみたい・・・。</p><div class="star-container"><span class="star"><a href="http://q.hatena.ne.jp/1325988375#a1126474" style="display:none;" class="star-url"></a><span class="hatena-star"></span></span></div></div><div class="section clearfix"><div class="answer-comments" ><div class="answer-comment clearfix questioner-comment" id="ac11518" >

となっており コメントは ソースには 含まれていませんでした。

実際に検索してみても

http://www.google.co.jp/search?num=100&hl=ja&newwindow=1&client=firefox-a&hs=ppc&rls=org.mozilla%3Aja%3Aofficial&q=language-identifier%2F+%E5%89%8D%E3%81%AF+%E3%82%BC%E3%83%AD%E3%83%83%E3%82%AF%E3%82%B9%E3%81%AE%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%9F%E3%81%91%E3%81%A9%E3%80%81%E6%9C%80%E8%BF%91+%E4%BD%BF%E3%81%88%E3%81%AA%E3%81%8F%E3%81%AA%E3%81%A3%E3%81%9F%E3%81%BF%E3%81%9F%E3%81%84%E3%83%BB%E3%83%BB%E3%83%BB%E3%80%82&oq=language-identifier%2F+%E5%89%8D%E3%81%AF+%E3%82%BC%E3%83%AD%E3%83%83%E3%82%AF%E3%82%B9%E3%81%AE%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%9F%E3%81%91%E3%81%A9%E3%80%81%E6%9C%80%E8%BF%91+%E4%BD%BF%E3%81%88%E3%81%AA%E3%81%8F%E3%81%AA%E3%81%A3%E3%81%9F%E3%81%BF%E3%81%9F%E3%81%84%E3%83%BB%E3%83%BB%E3%83%BB%E3%80%82&aq=f&aqi=&aql=&gs_sm=s&gs_upl=17380l17991l0l18775l2l2l0l1l0l0l179l179l0.1l1l0

前は ゼロックスのを使ってたけど、最近 使えなくなったみたい・・・。 id:mkonomi. さっそくの回答ありがとうございます。 language identifier ←まさにピッタリの名称ですね! 102ヶ国語を判定できるようです。 Automatic language identifier ...

といった感じで
http://q.hatena.ne.jp/1325988375
のページを見てみると わかるように 検索結果にも出てきません。


よって検索対象とならないです。

ま、スターのコメントを実際にどのようにして処理しているのかは よくわかってないので 中途半端かもしれませんが、検索エンジンからすると 検索対象に入ってないので 検索は できないことは 自明だと言えます。

id:fmht7

ありがとうございます。
スターコメントはJavascriptで動的に生成されているようですね。
Javascriptで生成されるページは完全にはクロールされないことがあるので、テキスト併せて配置されているようです。
http://support.google.com/webmasters/bin/answer.py?hl=ja&answer=35769

2012/01/18 01:17:55
id:a-kuma3 No.2

a-kuma3回答回数4548ベストアンサー獲得回数18972012/01/17 13:57:32ここでベストアンサー

ポイント60pt

ウィルスのスキャン中など、PC が重いときなどにページの表示を見ていると分かりますが、
スターはページがあらかた表示された後に現れます。
ページのレイアウト通りに HTML で埋め込まれているのではなく、javascript で、ページの読み込みが終わった後にスターの情報を取りに行っているようです。
今どきのクローラーは、javascript の動作まで追いかけるようですが、多分、簡単なコードしか追えないと思います。


はてなのソースを追ってみました。
それぞれのページには、以下の外部スクリプトの読み込みがあります。
<script type="text/javascript" src="http://s.hatena.ne.jp/js/HatenaStar.js?222" charset="utf-8"></script>

この中のスクリプトでは、 Hatena.Star.WindowObserver オブジェクトが、ページの表示完了を待ち合わせて、
最終的に Hatena.Star.EntryLoader オブジェクトの getStarEntries() というメソッドが、
以下の URL へリクエストを出します。
http://s.hatena.ne.jp/entries.json

パラメータが幾つか付きますが、uri というパラメータがスターをつける対象の URI です。
例えば、ハイクのパーマリンクだったり、人力検索の質問や回答のパーマリンクです。

URL を作るロジックを簡略化すると、以下のような感じになります。

Hatena.Star.BaseURL = 'http://s.hatena.ne.jp/';

// スター取得する対象の分だけ、uri パラメータをくっつける
for (var i = 0; i < entries.length; i++) {
    url += 'uri=' + encodeURIComponent(entries[i].uri) + '&';
}

new Ten.JSONP(url, c, 'receiveStarEntries');        // JSONP へリクエストを出す

複雑、というほどではありませんが、変数の参照をしたり、文字列の結合があったりと、
それなりにきちんと javascript のコードを処理しなくちゃいけなくなります。

データを読み込んだ後、receiveStarEntries というメソッドでデータは処理されます。
コメントは、HTML のテキストや属性値に直接かかれるのではなく、Hatena.Star.Comment オブジェクトのプロパティとして保持されます。
保持されたデータは、吹き出しのクリックの際に javascript で、文字として書きだされます。

引用スターの文字列も同様に、Hatera.Star.Star オブジェクトのプロパティとして保持され、
スターの mouseover イベントで javascript によって表示されます。


ハイクの例です。
http://h.hatena.ne.jp/Kumappus/243586774554484755
のエントリを表示するときのスターを取得するための URL が↓になります。
http://s.hatena.ne.jp/entries.json?uri=http%3A%2F%2Fh.hatena.ne.jp%2FKumappus%2F243586774554484755&&callback=Ten.JSONP.callback&Tue%20Jan%2017%202012%2011:24:21%20GMT+0900

応答は、JSON 形式で返ります。

{
"entries":[
    {
    "stars":[
        {"quote":"","name":"princo_matsuri"},
        27,
        {"quote":"","name":"zzteralin"}
        ],
    "can_comment":1,
    "comments":[
        {
        "body":"\u30c6\u30ec\u30d3\u96d1\u8a8c\u306e\u8868\u7d19\u8f09\u3063\u3066\u3066\u8208\u596e\uff01",
        "name":"hutuhiko",
        "id":"9235340089995107830"
        },
        {
        "body":"\u306a\u3093\u304b\u30b4\u30fc\u30ab\u30a4\u30b8\u30e3\u30fc\u3068\u5171\u6f14\u3059\u308b\u3089\u3057\u3044\u306d\u3002",
        "name":"Kumappus",
        "id":"11542097892911398355"
        }
        ],
    "colored_stars":[
        {
        "stars":[
            {"quote":"","name":"a-kuma3"}
            ],
        "color":"green"
        }
        ],
    "uri":"http://h.hatena.ne.jp/Kumappus/243586774554484755"
    }
    ],
"can_comment":1,
"rks":"e17e0fa622559b9dff9d0bd5de6ee01e96e2d143"
}

スターコメントは、"comments" に、コメント、はてなID 、コメントのID が書き込んだ順番で入ってきます。
コメントは、Unicode エスケープシーケンスで表現されています。


人力検索の例です。
http://q.hatena.ne.jp/1326705849
の質問では、スターを取得するための URL は、こんな感じです。
質問と回答の数だけ uri パラメータが並びます。
http://s.hatena.ne.jp/entries.json?uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127695&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23ac12488&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127699&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23ac12492&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127700&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23ac12493&uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127746&&callback=Ten.JSONP.callback&Tue%20Jan%2017%202012%2010:38:27%20GMT+0900

長いので、ひとつの回答についてるスターの情報だけ取り出してみます。
http://q.hatena.ne.jp/1326705849#a1127699
  ↓
http://s.hatena.ne.jp/entries.json?uri=http%3A%2F%2Fq.hatena.ne.jp%2F1326705849%23a1127699&callback=Ten.JSONP.callback&Tue%20Jan%2017%202012%2010:38:27%20GMT+0900

{
"entries":
    [
    {
    "stars": [
        {"quote":"","name":"taiki-sonic-1110"},
        {"quote":"\u77ed\u6587\u3059\u307f\u307e\u305b\u3093","name":"a-kuma3"},
        {"quote":"\u81ea\u5206\u304b\u3089\u898b\u3066\u3053\u306e\u56de\u7b54\u306f\u9577\u6587\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\r\u003cbr /\u003e\u300c\u77ed\u6587\u3059\u307f\u307e\u305b\u3093\uff08^^;;\u300d","name":"ken3memo"}
        ],
    "can_comment":1,
    "comments":[],
    "uri":"http://q.hatena.ne.jp/1326705849#a1127699"
    }
    ],
"can_comment":1,
"rks":"e17e0fa622559b9dff9d0bd5de6ee01e96e2d143"
}

人力検索では、スターコメントが無いので "comments" は空っぽです。
引用スターの文字列の部分が、"stars" の "quote" に入ってきます。



クローラーが javascript を解釈するみたいな情報が、チラホラあったので
例にあげたハイクのエントリを、幾つかのエンジンで探してみましたが、やっぱり駄目ですね。


https://www.google.com/search?num=100&q=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+site%3Ah.hatena.ne.jp&oq=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+site%3Ah.hatena.ne.jp

http://search.yahoo.co.jp/search?p=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99

http://search.goo.ne.jp/web.jsp?MT=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99&STYPE=web&SH=1&IE=UTF-8&OE=UTF-8&from=gootop

http://www.bing.com/search?q=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99

http://www.baidu.jp/s?tn=baidujp&ie=utf-8&cl=3&ct=262144&wd=%E3%82%B4%E3%83%BC%E3%82%AB%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%BC%E3%81%A8%E5%85%B1%E6%BC%94%E3%81%99%E3%82%8B+%E3%81%AF%E3%81%A6%E3%81%AA%E3%83%8F%E3%82%A4%E3%82%AF+%E3%81%8F%E3%81%BE%E3%81%A3%E3%81%B7%E3%81%99


クローラーが解釈できるのは、せいぜい、javascript で展開するアンカーだけのようです。
javascript によって作成される動的なメニューを解釈できないと、サイト内のクロールができないからでしょう。


# 長文、すみません =)

他1件のコメントを見る
id:a-kuma3

スターをロードした時にはスターコメントがあれば吹き出しが薄いオレンジになっていて、その時点でスターコメントの文字列はロードされているのでしょうか?

その時点で、既にロードされてます。

最近のFirefox だと、ctrl + shift + K で、ブラウザが出したリクエストとか、エラーの状況がプラグインなしで確認できます。

クローラーが javascript を、どこまで解釈するかは、コストとの兼ね合いなんだと、想像します。
トップページの javascript で表示されているメニューを解釈できないと、そのサイトのページをカバーできないので、検索範囲が狭くなってしまう、というのが検索エンジンにとって無視できない問題なのでしょう。

それに比べて、1ページの中で javascript が展開する文字列は、HTML で性的に展開される情報に比べて、少ないと思われるので、そこに処理コスト(と、開発のコスト)をかけていないのでしょう。

それに、javascript のオブジェクトが抱えている文字列が、ページのコンテンツの一部であるかどうか、というのは、プログラムで判定しにくい、ということもあります。

スターコメントは、明らかにコンテンツの一部だと思いますが、HTML 要素の属性や ID がコンテンツかどうか、というのは、判断が難しいと思います(特に、英語圏)。


想像ですが、クローラーの javascript の解釈は、ユーザのアクションが伴うものかどうかの判定もしてないと思います。
トップページのメニュー然り。

多分、<script> もクロールの対象にして、URL と思しき文字列があったら、アンカーに準ずる処理をしているのではないでしょうか。


因みに、最近の Firefox だと、ctrl + shift + K で、ブラウザが出したリクエストとか、エラーの状況が、プラグイン無しで確認できます。

# 「ポイントください」の次には、「長文、失礼しました」が流行る(わけない =)

2012/01/18 01:47:33
id:fmht7

#個人的には「ポイントください」の方が清々しくて清々してて好きです:-D

2012/01/18 01:50:22
id:taroe No.3

taroe回答回数1099ベストアンサー獲得回数1322012/01/18 10:37:29

ポイント10pt

http://www.suzukikenichi.com/blog/google-can-read-javascript-and-pass-pagerank-and-anchor-text/
http://www.suzukikenichi.com/blog/msnbot-reads-javascript-and-what-about-googlebot/

>はてなスターのスターコメントは検索エンジンの検索対象になりますか? クロールされるのでしょうか。

・なることを期待してはいけない
・ならないことも期待してはいけない

となってます。

クロースされてる可能性はあるが
検索エンジンには出てきたのを見た人はいないというところでは?

  • id:fmht7
    No.1,2までの解説でかなり分かってきました。
    しかし、スターコメントも検索エンジンのクロールされているものが完全にないとは言い切れないと思います。
    a-kuma3の意欲的な回答の呼び水になったtakntさんには10ポイント、a-kuma3には50ポイント差し上げます。

    あと「Javascriptでロードされる文字情報が検索できる例(スターコメントでもそれ以外でも)」を教えてくださった方に残り40ポイント差し上げたいと思います。(私が納得した先着一名様)

    よろしくお願いします。
  • id:fmht7
    「Javascriptでロードされる文字情報が検索できる例」が寄せられませんでしたので、適当に配分します。
    ありがとうございました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません