[WWW - Robots]

Die nachfolgenden Ausführungen stammen in der englischen Originalversion von Martijn Koster (www.robotstxt.org) und wurden auszugsweise von mir ins Deutsche übersetzt.

[Übersicht]
  1. Über WWW Robots
  2. Indexierende Robots
  3. Für Server Administratoren
  4. Robots Exclusion Standard
  5. Querverweise

Über Web Robots

Was ist ein WWW Robot?

Ein Robot ist ein auf einem Server laufendes Programm, das die Web- Dokumente automatisch durchsucht und dabei allen Referenzen (Links) auf andere Dokumente rekursiv folgt.

Webrobots werden manchmal als Web Wanderers, Web Crawlers, oder Spiders bezeichnet. Diese Bezeichnungen sind etwas irreführend, da sie den Eindruck erwecken, die Software selbst würde sich wie ein Virus zwischen den Webseiten bewegen. Das ist natürlich nicht der Fall. Ein Robot besucht Sites, indem er (wie ein Surfer mit einem Browser) die Dokumente anfordert und auswertet.

Was ist eine Suchmaschine?

Eine Suchmaschine ist ein Programm, welches Datenbestände durchsucht. Im Kontext zum Web wird der Ausdruck Suchmaschine meist für Suchmasken verwendet, die Datenbanken mit HTML- Dokumenten nach Begriffen durchsuchen, die von einem Robot gesammelt wurden.

Welche Arten von Robots gibt es?

Robots können für eine Reihe von Aufgaben eingesetzt werden:

Hier finden Sie eine Liste aktiver Robots und eine Beschreibung ihrer Funktionen. (englisch)

Was sind also Robots, Spiders, Web Crawlers, Worms, Ants

Hier handelt es sich im Prinzip um dasselbe, mit einigen feinen Unterschieden:

Robots
der generische Name, siehe oben.
Spiders
dasselbe wie Robots, liest sich in der Presse aber cooler ;-)
Worms
dasselbe wie Robots, wobei ein Wurm (im Gegensatz zum Robot) technisch gesehen ein sich replizierendes Programm ist.
Web Crawlers
dasselbe wie Robots, beachten Sie aber, dass WebCrawler ein spezifischer Robot ist.
WebAnts
verteilte, cooperierende Robots.

Sind Robots schlecht für das Web?

Es gibt einige Gründe, dass man annehmen könnte, Robots seien schlecht für das Web:

Indexierende Robots

Wie entscheidet ein Robot, welche Seiten er besucht?

Das hängt vom jeweiligen Robot ab, jeder Robot verfolgt unterschiedliche Strategien. Grundsätzlich starten sie von einer ursprünglichen Liste von Links aus, speziell von Dokumenten aus, die viele Links auf andere Webseiten enthalten, wie Serverlisten, "What's New" Seiten und den populärsten Webseiten.

Die meisten Suchmaschinen erlauben es Ihnen, Ihre URL manuell anzumelden, welche erfasst und später von einem Robot besucht wird.

Manchmal werden auch andere Quellen wie das Scannen durch USENET Postings, publizierte Mailinglisten Archive, etc. benutzt.

Anhand dieser Startpunkte kann ein Robot URLs auswählen, die er besuchen und indexieren will, diese parsen und als Quelle für neue URLs verwenden.

Wie entscheidet ein Robot, was er indexiert?

Wenn ein Robot ein Dokument abruft, analysiert er es und übernimmt die Daten ggf. in seine Datenbank. Nach welchen Kriterien ein Robot hierbei vorgeht, hängt wiederum vom jeweiligen Robot ab.
Manche Robots indexieren die HTML- Titel oder die ersten paar Zeilen, andere übernehmen sämtliche Wörter mit Gewichtungen, die vom HTML- Konstrukt abhängen, usw. Manche parsen die Meta- Tags oder spezielle Hidden- Tags.

Wie registriere ich meine Seite bei einem Robot?

Sie werden die Antwort schon vermuten: Das hängt von der jeweiligen Suchmaschine ab ;-).
Die meisten Services bieten auf ihren Seiten einen Link zur URL Submission an.

Zudem gibt es eine Reihe kostenloser und kostenpflichtiger Anmeldedienste im Web, die Ihnen diese Arbeit abnehmen können.

Für Server Administratoren

Wie stelle ich fest, ob mich ein Robot besucht hat?

Sie können die Serverlogs üperprüfen, ob innerhalb kurzer Zeit vom selben Host viele Seiten abgerufen wurden.

Wenn Ihr Server User-agent Logging unterstützt, können Sie die Logfiles nach unüblichen User-agent- Header- Werten überprüfen.

Schliesslich, wenn ein Host wiederholt die Datei '/robots.txt' abruft, ist die Wahrscheinlichkeit, dass es sich hierbei um einen Robot handelt, sehr gross.

Nachfolgend ein typischer Eintrag in einem Serverlog, der auf einen Robot- Besuch hinweist

crawl4.googlebot.com - - [26/Apr/2003:08:57:51 +0200] "GET /robots.txt HTTP/1.0" 404 1258 "-" "Googlebot/2.1 (+http://www.googlebot.com/bot.html)"

Ich wurde von einem Robot besucht, was nun?

Tja, ... gar nichts :-)
Der Sinn der Robots ist es, automatisch zu agieren, Sie müssen nichts weiteres dazu beitragen.

Wie halte ich einen Robot von meinen Seiten fern?

Lesen Sie bitte den nächsten Abschnitt...

Robots exclusion standard

Warum finde ich Logfile- Einträge über die Datei robots.txt?

Diese Einträge stammen von Robots, die überprüfen, ob diese Datei auf Ihrem Server existiert und ob sich darin Einträge befinden, siehe auch hier.

Wenn Sie keine robots.txt einsetzen, Sie die Einträge in Ihren Errorlogs aber stören, erstellen Sie einfach eine leere Datei diesen Namens im Rootverzeichnis Ihres Webservers.

Setzen Sie kein HTML oder Hinweistexte wie "Wer zum Teufel bist Du?" in diese Datei, kein Mensch wird dies je lesen. ;-)

Wie verhindere ich, dass Robots meine Seiten scannen?

Die schnelle Variante, Robots davon abzuhalten, Ihre Seiten zu scannen, sind die folgenden beiden Zeilen in der Datei robots.txt:

User-agent: *
Disallow: /
aber es ist einfach, etwas selektiver vorzugehen.

Wo finde ich heraus, wie die Datei robots.txt arbeitet?

Sie können unsere Ausführungen darüber lesen, das Konzept, das dahintersteht, ist jedoch simpel: In der Textdatei robots.txt können Sie festlegen, welche Bereiche Ihrer Webseitenstruktur für einige oder alle Robots tabu sind.
Am einfachsten lässt sich dies an einem kleinen Beispiel erklären:

# /robots.txt file for http://webcrawler.com/
# mail webmaster@webcrawler.com for constructive criticism

User-agent: webcrawler
Disallow:

User-agent: lycra
Disallow: /

User-agent: *
Disallow: /tmp
Disallow: /logs
Die ersten beiden Zeilen, die mit '#' beginnen, sind Kommentare.

Der erste Absatz spezifiziert, dass fü den Robot namens 'webcrawler' keine Einschränkungen (disallowed) gemacht werden, erkann sich frei bewegen.

Der zweite Abschnitt schliesst für den Robot namens 'lycra' alle relativen URLs, die mit '/' beginnen, von der Indexierung aus. Da alle relativen URL's eines Servers mit '/' beginnen, bedeutet dies, dass die komplette Webseite von der Indexierung ausgeschlossen wird.

Der dritte Abschnitt spezifiziert, dass für alle anderen Robots die URLs, die mit /tmp oder /log beginnen, vom Scanvorgang ausgeschlossen werden.

Beachten Sie, dass mit '*' "alle anderen User-agent" gemeint ist, Sie können keine Wildcards oder regulären Ausdrü,cke einsetzen.

Zwei verbreitete Fehler:

Was, wenn ich keine robots.txt einsetzen kann?

Sie haben dann immerhin noch die Möglichkeit, META- Tags einzusetzen.

Setzen Sie hierzu folgende Tags in den Head Ihrer Webseite ein::

<META NAME="ROBOTS" CONTENT="NOINDEX">
Dadurch wird dieses Dokument nicht indexiert.

Hiermit:

<META NAME="ROBOTS" CONTENT="NOFOLLOW">
wird der Robot den Links im aktuellen Dokument nicht folgen.

Mehr zu Metatags erfahren Sie hier.

Ist das Listing sensitiver Daten sicher?

Sie werden sich vielleicht fragen, ob das Auflisten von Verzeichnissen, welche nicht indexiert werden sollen, nicht erst recht zu ungebetenem Besuch führt.
Hierzu die Antwort:

Die Datei robots.txt ist nicht dafür zuständig, den Zugriff auf Verzeichnisse und/oder Dateien zu regulieren. Es handelt sich hierbei nur um den Hinweis "Bitte nicht eintreten" und nicht um eine verschlossene Tür. Für die Zugriffsbeschränkung ist eine serverseitige Konfiguration, bspw. .htaccess zuständig.

[Querverweise]

Diese Artikel könnten Sie auch interessieren:

Die Datei robots.txt
Liste aktiver Robots (engl.)
Metatags
Die Datei .htaccess

Copyright © 1998- Martijn Koster (www.robotstxt.org) &
Nightfire Java Archiv