Crawling von HTML-Formularen

Montag, 14. April 2008

Google ist ständig bemüht, neue Ideen zur Verbesserung der Erfassung des Webs zu testen. Dabei wenden wir bereits einige geschickte Techniken an, wir scannen beispielsweise JavaScript und Flash-Dateien, um so Links zu neuen Webseiten zu entdecken. Heute möchten wir euch eine weitere neue Technik vorstellen, mit der wir seit kurzem experimentieren.

In den letzten Monaten haben wir zahlreiche HTML-Formulare untersucht, um so neue Webseiten und URLs zu ermitteln, die wir ansonsten nicht finden und unseren Usern in der Google-Suche bereitstellen können. Genauer gesagt bedeutet dies, falls wir ein <FORM>-Element auf einer nützlichen Site finden, kann es sein, dass wir eine geringe Anzahl an Anfragen an das Formular senden. Bei Textfeldern verwenden unsere Computer automatisch Worte aus dem Inhalt der jeweiligen Site - bei Auswahl-Menüs, Checkboxen und Radiobuttons wählen wir eine der verfügbaren Optionen im HTML-Code. Wenn wir entsprechende Eingabewerte gewählt haben, erstellen wir URLs, die typischen Nutzeranfragen im Formular entsprechen, und versuchen dann, diese URLs zu crawlen. Falls wir danach davon ausgehen können, dass die Seite, welche auf unsere Anfrage hin geliefert wurde, eine gültige Seite ist und außerdem interessant erscheint und noch nicht in unserem Index enthalten ist, dann werden wir diese Seite möglicherweise ebenfalls in unseren Index aufnehmen, so wie das bei anderen Webseiten auch der Fall ist.

Natürlich halten wir uns bei diesem Experiment an die guten Umgangsformen im Internet. Nur eine kleine Anzahl besonders nützlicher Seiten wird diesem Verfahren unterzogen und unser Crawler, der stets freundliche Googlebot , hält sich immer an die robots.txt-Datei und die nofollow- und noindex-Anweisungen. Dies bedeutet, dass wir, wenn ein Formular in der robots.txt-Datei vom Crawling ausgeschlossen wurde, keine URLs crawlen, die durch dieses Formular erzeugt werden.

Außerdem crawlen wir ausschließlich Formulare, welche die GET-Methode verwenden, und vermeiden Formulare, die jegliche Art von Informationen seitens des Users erfordern. Beispielsweise lassen wir Formulare aus, die eine Passwort-Eingabe erfordern oder Begriffe verwenden, die gewöhnlich mit persönlichen Daten in Verbindung gebracht werden, wie z. B. Logins, User-IDs, Kontakt-Adressen usw. Außerdem nehmen wir Rücksicht auf die Auswirkungen eines derartigen Crawlings auf eine Website und begrenzen dieses deshalb auf eine geringe Anzahl an Anfragen je Site.

Die Webseiten, die wir in diesem erweiterten Crawling entdecken, fallen nicht zu Lasten der regulären Seiten einer Site, die ohnehin gecrawlt werden. Somit ergibt sich auch keine Änderung des PageRanks für die anderen Seiten. Genaugenommen wird dadurch lediglich die Sichtbarkeit eurer Site für Google erhöht. Diese Neuerung hat ebenfalls keinerlei bedeutenden Einfluss auf das Crawling und Ranking oder die Auswahl anderer Webseiten.

Dieses Experiment ist ein Teil von Googles umfassendem Bemühen, die Abdeckung des Internets zu erhöhen. Tatsächlich ist bereits seit längerem bekannt, dass HTML-Formulare einen Zugang zu großen Datenbeständen bieten, die gewöhnlich außerhalb der Reichweite von Suchmaschinen liegen. Die Begriffe "Deep Web", "Hidden Web" (verstecktes Web) oder "Invisible Web" (unsichtbares Web) wurden gemeinhin verwendet, um derartigen Content zu bezeichnen, der den Usern von Suchmaschinen bislang verborgen blieb. Indem wir auch HTML-Formulare crawlen (und dabei die robots.txt-Datei beachten), sind wir in der Lage, die User unserer Suchmaschine zu Inhalten zu führen, die ansonsten schwer in den Suchergebnissen zu finden wären. Damit bieten wir Webmastern und Usern ein besseres und umfassenderes Sucherlebnis.

Crawling through HTML forms (English Version)

Post von Jayant Madhavan und Alon Halevy, Crawling and Indexing Team (Übersetzung von Sven, Search Quality)