2012-04-02 6 views
1

Angenommen ich so etwas wie diese Seite haben:Kann Googlebot grundlegendes Javascript tun?

<noscript>You need JS for this page</noscript> 
<script> 
    document.write('you have javascript'); 
    $(function() { /* Some DOM heavy coding */ }); 
<script> 

Was wird dies Google aus? Wenn jemand Google nach "Sie haben Javascript" sucht, werden sie meine Seite sehen?

Antwort

4

Die sicherste Antwort lautet: Verlassen Sie sich nicht darauf. Vor allem, weil Sie eine schwere DOM-Codierung machen.

Wenn der Code für Suchzwecke in Google sein muss, erstellen Sie diesen Teil des HTML-Codes auf dem Server und verwenden Sie JavaScript nur für die Interaktion. Die Web-Crawler von Google werden schlauer, aber ich erwarte nicht, dass sie willkürlichen JavaScript-Code verstehen.

4

Yes, Google’s Bots Understand Code
How much javascript does Googlebot read
Google Admits GoogleBot can Parse and Execute JavaScript Code on-the-fly

Sie können dies nützlich finden: View a Web Page as 'Googlebot'

Und der Vollständigkeit halber: Google Googlebot javascript 'und diese alle auf der ersten Seite sind.

+0

Es ist klar, dass Google daran arbeitet, Javascript-generierten Inhalt zu indizieren und dass sie jetzt etwas davon machen. Sofern Sie nicht einen spezifischeren Verweis als den von Ihnen angegebenen haben, ist nicht klar, was genau von Google generiert wurde und was nicht. Also, ich würde sagen, es ist ein wenig zu weit gegangen, um diese Frage nur mit einem "Ja" zu beantworten. Es ist eher wie ein "Vielleicht". Wenn Sie möchten, dass es indexiert wird, sollte es im Markup, nicht im Javascript sein. Wenn Sie möchten, dass es von allen Suchmaschinen indiziert wird, muss es im Markup stehen. – jfriend00

+0

Bessere Antwort jetzt? Auch das "Ja" war der Titel der verlinkten Seite – kiswa

1

Auf meiner eigenen Seite kann ich bestätigen, dass GoogleBot JavaScript ausführt, und gemäß der IP war es wirklich es, und nicht nur UA Spoofing von einem Browser.

Ich erfuhr es heute, als ich einige Statistiken über die Verwendung von AdBlockPlus und dergleichen generieren wollte, als ich sah, dass GoogleBot in den Protokollen auftauchte, was ich nicht erwartet hatte. Scheint, dass er auch JavaScript-Ausführung benutzt, um einige neue URLs zu krabbeln; Ich meine, wenn ein JavaScript eine Seite in einem IFRAME mit einigen Parametern in der URL lädt, kann es zuerst versuchen, die Seite ohne die Parameter zu laden, und später erst versuchen, die Seite mit den Parametern zu laden. Dies könnte darauf hindeuten, dass das JavaScript zuerst in einer Art Sandbox ausgeführt wird, um zu sehen, was es tut.