Gerold Kumpfhuber: Spider

Hallo!
Ich arbeite an einem Intranet für eine Firma mit etwa. 1200 Mitarbeitern. Da ich nun eine Suchmaschine schreiben will, möchte ich wissen wie man einen Spider programmiert. Ich stelle mir das so vor, dass ich in den Header der Dokumente, die Suchbegriffe nach denen dieses Dokument gefunden werden soll, hineinscheibe und in der Nacht lasse ich ein Programm darüberlaufen, dass mir diese Begriffe und die URL dieser Seite ausliest. Wie aber automatisiere ich das, sodass das Programm eine Seite nach der anderen bearbeitet?

Vielen Dank
Gerold

  1. Hi,

    Ich stelle mir das so vor, dass ich in den Header der Dokumente, die Suchbegriffe nach denen dieses Dokument gefunden werden soll, hineinscheibe und in der Nacht lasse ich ein Programm darüberlaufen, dass mir diese Begriffe und die URL dieser Seite ausliest.

    "im Prinzip ja". Dass da noch deutlich mehr getan werden _kann_, zeigt der Erfolg von Google bzw. der Misserfolg vieler anderer Suchmaschinen.

    Wie aber automatisiere ich das, sodass das Programm eine Seite nach der anderen bearbeitet?

    Analysiere den HTML-Code. Finde die Links, sortiere Redundanz und Links zu nicht zu speidernden Seiten raus. Benutze ggf. die Zahl der Links auf eine Seite als Qualitätsindiz.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
  2. Hi Gerold,

    Ich arbeite an einem Intranet für eine Firma mit etwa. 1200 Mitarbeitern. Da ich nun eine Suchmaschine schreiben will, möchte ich wissen wie man einen Spider programmiert.

    hm - eine Intranet-Suchmaschine braucht keineswegs zwingend einen Spider.

    Denn in Deinem besonderen Szenario hast Du ggf. die Möglichkeit, über wesentlich geeignetere Protokolle als HTTP auf die entsprechenden Dateien zuzugreifen - naheliegenderweise über das Dateisystem (wenn der HTTP-Server entweder identisch mit dem Fileserver ist oder auf entsprechende Laufwerke zugreifen kann).

    Schau Dir mal
        http://www.xav.com/scripts/search/
    an. Dessen Indexer erlaubt Dir, zwischen einem Spider-Betrieb und einem Dateizugriffs-Indexer zu wählen - und dies sogar separat für definierbare Bereiche (Realms) des durchsuchbaren Universums.

    Überhaupt könnte FDSE Dir die Aufgabe, eine Suchmaschinen zu _betreiben_, sehr vereinfachen ... mußt Du sie denn unbedingt selbst schreiben? Was kann FDSE nicht, das Du brauchst?

    Wie aber automatisiere ich das, sodass das Programm eine Seite nach der anderen bearbeitet?

    Das, was Du "spidern" willst, ist ein Graph. Es gibt Standard-Algorithmen zur Traversierung von Graphen - "Suchen in der Tiefe", "Suchen in der Breite" etc.

    In jedem Fall brauchst Du
    a) ein Gedächtnis, welches Dir sagt, wann Du welchen Netzknoten zuletzt besucht hast,
    b) einen HTML-Links-Parser, der Dir aus jedem Dokument Verweise auf weitere Dokumente extrahiert
       (und damit das Gedächtnis erweitert)
    c) eine Prozeßsteuerung, die aufgrund des Gedächtnisses eine Strategie zur Auswahl der nächsten
       zu besuchenden Seite umsetzt.

    a) und c) sind relativ einfach; b) gibt es z. B. für Perl als fertiges Modul.

    FDSE ist Open Source - im Zweifelsfalle kannst Du dessen Spider einfach lesen und Dich von ihm inspirieren lassen.

    Viele Grüße
          Michael

    --
    T'Pol: I apologize if I acted inappropriately.
    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
    (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
     => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
    Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.
    1. Lieber Michael,

      vielen Dank für die Info, hat mir sehr geholfen.

      LG aus Wien
      Gerold

      1. Hi,

        Lieber Michael,

        vielen Dank für die Info, hat mir sehr geholfen.

        LG aus Wien
        Gerold

        guck mal auf http://www.w3sitesearch.de
        ist bisher nur Demo, funktioniert (noch) nicht vollständig.
        XAV ist nett, aber nicht wirklich eine gute Suchmaschine.

        Gruß
        Reiner