15


6

GoogleのクローラーはJavascriptを解釈しますか? AJAXを介してページを読み込むとどうなりますか?

ユーザーが自分のページに入ると、div内にデータを読み込むために別のAJAX呼び出しを行う必要があります。 それが私のアプリケーションの仕組みです。

問題は…​このコードのソースを表示すると、そのAJAXのソースが含まれていないことです。 もちろん、wget URLを実行すると…​ AJAX HTMLも表示されません。 理にかなっています。

しかし、Googleはどうですか? Googleはブラウザのようにコンテンツをクロールできますか? ユーザーに表示されるようにGoogleがページをクロールできるようにするにはどうすればよいですか?

8 Answer


17


上記の回答にもかかわらず、明らかに、JavaScriptをある程度解釈します。http://www.searchnewz.com/topstory/news/sn-2-20100315SEOInterviewwithMattCutts.html [Matt Cuttsによると]:

_ 「しばらくの間、JavaScript内でスキャンしていて、リンクを探していました。 GoogleはJavaScriptについてより賢くなり、JavaScriptを実行できます。 すべてのJavaScriptを実行するとは言いませんので、JavaScriptを実行しない条件がいくつかあります。 確かに、Googleアナリティクスのようなよく知られた一般的なJavaScriptがいくつかあります。GooglebotからGoogleアナリティクスへのファントムアクセスを生成しようとしないため、実行することすらありません。」 _

(回答済みの質問に答える理由は? 主に、今日投稿された重複した質問のために見ただけで、この情報はここには表示されなかったためです)


10


実は… GoogleにはAjaxアプリケーションをクロールするためのソリューションがあります…​


5


更新: 「Ajaxで生成されたコンテンツ、クロールおよびブラックリスト」に関するこの質問が見つかりましたhttps://developers.google.com/webmasters/ajax-crawling/docs/specification[GoogleがAJAXリクエストをクロールする方法]に関するこのドキュメントは、https://developers.google.com/webmastersに関するドキュメントのコレクションの一部です。 / ajax-crawling / [AJAXアプリケーションをクロール可能にする]。

要するに、「…​」ではなく「…​」を使用し、URL「path / to / path?escaped_fragment = data」に実際のサーバー側の回答を提供する必要があることを意味します。

また、クローラにSEOに優しいコンテンツへのヒントを提供するために、http://www.w3.org/TR/html5/the-link-element.html#the-link-element []タグを検討してください。 、http://www.seomoz.org/blog/canonical-url-tag-the-most-important -seo-practices-since-sitemapsからの進歩[この記事]で少し説明しますが、良い候補です

注:https://stackoverflow.com/questions/10006825/search-engine-misunderstanting/10006925#comment12792862_10006925から回答を受け取りました。ここでは私のものを削除できないようです。


2


この状況で私がすることは、最初は常に、Ajax呼び出しが実行しているもののデフォルトのパラメーターに基づいてコンテンツを最初にページに取り込むことです。 次に、ページの更新を行うためにajax javascriptのみを使用します。


1


他の回答が言うように、Googleのクローラー(および他の検索エンジンのもの)はJavascriptを_解釈しない_と_あなたはユーザーエージェントなどで区別しないようにする必要があります(あなたのサイトが表示のためにダウングレードまたはブロックされるリスクがあります)ユーザーとロボットのコンテンツが異なります)。 むしろ、_do_は、何らかの理由(理由が「ロボット」である場合を含む)でJavascriptがブロックされている訪問者に(おそらく最小限の)レベルのコンテンツを提供します-結局、それがまさにhttp://の理由ですwww.w3schools.com/TAGS/tag_noscript.asp[noscript] tag exists …​ 非常に簡単にするために、Javascriptの非ユーザーにそのような「最小限のレベルのコンテンツ」(または、必要に応じて最小限以上のコンテンツを提供することは簡単です)。


0


Webクローラーは、コンテンツを動的にロードするajaxとjavascriptで苦労しています。 このサイトには、Googleがサイトをインデックスに登録する方法を示すアイデアがいくつかありますhttp://www.softwaredeveloper.com/features/google-ajax-play-nice-061907/


0


JavaScriptなしでORで動作するようにページを作成する場合(つまり、 JavaScriptが自動的に、または「プレーンHTMLとして表示」リンクを介して失敗した場合、サーバーへのフレームまたは標準のGET / POST要求を使用するようにフォールバックすると、検索エンジンがページをクロールするのがはるかに簡単になります。

彼らが「動的」コンテンツをクロールするのは理にかなっています-それは…​動的であるからです。

私の理解では、ほとんどの場合、Googleはクライアント側の動的コンテンツをクロールしません。


0


これで、Googleボットはブラウザのような単純な「lynx」に限定されないように見えます。

Googleボットは、「人間に見える」テキストと「人間に対照的な」テキストを取得して、ページのさまざまなセクターで重要性を与えようとします。 そのため、FFやChromeのような別のブラウザのように、「レイアウトエンジン」でページをレンダリングします。

v8 Javascript Engineのサポートさえあるかもしれません。 ボットはページをロードし、domが「準備完了」になるまで待機し、ページが安定して表示されるまで数秒間待つこともあります。 そして、対照的なテキストをトリミングします。