14

私は、多くの ajax リクエストを使用してページをレンダリングするいくつかの高度な JavaScript アプリケーションを使用してきました。アプリケーションを (Google で) クロール可能にするには、https://developers.google.com/webmasters/ajax-crawling/?hl=frに従う必要があります。これは、サイトを検索可能にするために、リンクの再設計、html スナップショットの作成などを行うように指示します。

レンダリングされたページとインデックスを取得するためにクローラーが javascript を実行しないのはなぜだろうか。これには理由がありますか?それとも、将来登場する可能性のある検索エンジンに欠けている機能ですか?

4

3 に答える 3

1

GoogleBot は実際には js で記述されたサイトを処理しますが。ajax サイトの大きな問題は、たとえ GoogleBot が js を実行して ajax リクエストを処理できるとしてもです。

Web クローラーが、ページの読み込みがいつ完了したかを正確に知ることはできません。そのため、Web クローラーは、ajax 要求を開始する前に、ページを読み込んでそのページをインデックス化することができました。ページのスクロール時にスクリプトが実行されるとします。Google ボットがすべての可能なイベントをトリガーするわけではない可能性が非常に高いです。

もう一つの問題はナビゲーションです

ページをリロードせずにナビゲーションできるため、1 つの URL を複数の「結果の表示」にマッピングできます。そのため、Google は開発者に、静的ページを使用してページのコピーを保持し、他の方法ではアクセスできないページをサポートするように依頼しています。それらは索引付けされる予定です。

サイトの各ページに完全修飾 URL を介してアクセスできる場合。そうすれば、サイトのインデックス作成に問題はありません。

つまり、スクリプトが実行されます。ただし、すべてのスクリプトの処理が完了した後、クローラーがページをインデックスに登録するかどうかは定かではありません。

ここにリンクがあります:

GoogleBot のスマート化: 2010 年に作成されたものであり、それ以降、Web クローラーがよりスマートになっていることが期待できます。

于 2013-10-10T05:17:30.527 に答える
1

純粋な HTML を読むことは、javascript 関数などを待ったり呼び出したりしてから、ページがどのように設定されているかを通知するよりもはるかに高速です。それが主な理由だと思います。

もう 1 つの理由は、クロール全体が自動化されていることです。そのため、静的ページを読むことははるかに簡単で、より理にかなっています。JavaScript と同様に、ページのコンテンツが毎秒変更される可能性があり、クローラーが「混乱」する可能性があります。

これがまだ検索エンジンに実装されていないことを考えると、近い将来には実現しないと思います。

于 2013-10-10T05:15:02.303 に答える