Programmieren in Java für die Suchmaschinenoptimierung – Webspider und andere Spinnen – Sitemap und Konsistenzsummen

Programmieren in Java für die Suchmaschinenoptimierung – Webspider und andere Spinnen – Sitemap und Konsistenzsummen

21. Januar 2019 0 Von Simon

Spider bekam Updates und Mitarbeiter:

  1. Wir öffnen eine Seite und verarbeiten ihren Inhalt in Java zu String.
  2. Wir scannen dann zunächst nach href-Einträgen im Source Code. Wir vergleichen Strings vorgegebener Länge miteinander.
  3. Haben wir einen Link gefunden, schauen wir, ob es eine HTML-Seite mit weiteren Links oder ein jpg/gif/pdf/png ist. Ist es jpg etc., beachten wir den dorthin führenden Link nicht. Wenn es eine HTML Seite ist, dann schauen wir, ob wir den Link bereits schon mal gefunden haben.
    1. Ist der Link neu, packen wir ihn ans eine Ende (oben) des Arrays (ans eine Ende einer Liste).
      1. In einer (Adjazenz-) Matrix zählen wir an der Stelle des gefundenen Links einen Counter hoch.
    2. Ist der Link alt, machen wir gleich 3.1.1. (Spider spring!)
    3. Außerdem zerlegen wir hier den Link in seine Bestandteile, d.h. unterteilen ihn in die verschiedenen Ebenen des Verzeichnisses in das er verweist. (home/Kategorie1/Seite1.htm hat zwei Ebenen und die Seite1). Die Ebenen werden in Arrays eingetragen. Doppelte Einträge werden entfernt. Ergebnis ist eine speichersparende ungeordnete Sitemap ohne Verbindungen. Die Einträge jeder Ebene werden von uns fortlaufend nummeriert behandelt bzw. an die richtige Stelle im Array gesetzt. Der Link bekommt die Nummer zugeordnet, mit der er aus den Arrayeinträgen rekonstruiert werden kann (das sind hier die Laufindizes der Schleifen). Ergebnis ist eine ungeordnete Sitemap mit Verbindungen.
  4. Wir öffnen den nächsten noch nicht geöffneten Link am anderen Ende (unten) der Liste.
  5. Wir wiederholen Schritt drei und vier solange, bis wir oben in der Liste angekommen sind.
  6. Wir haben eine Stoppuhr für die Laufzeitoptimierung eingebaut. So wissen wir wie gut Spider arbeitet.

Wenn Spider das Netz abgelaufen ist und am Ende des Arrays mit den Links angekommen ist, wird er dort von Mitarbeitern abgelöst. Nicht zu Spiders Laufzeit, sondern danach werten die das Linkarray aus. Vor allem weil wir ab hier die Anzahl der gefundenen Links brauchen.

  1. Wir werten die gefundenen Links aus, indem wir mehrfache (n-fach) die Matrixmultiplikationen auf die Matrix von 3.1.1 durchführen. Dann werten wir die gefundene Matrix aus, indem wir Zeilen- und Spaltensummen (Aktivsummen und Passivsummen oder Konsistenzsummen) bilden und diese den gefundenen Links aus 3.1 zuordnen.
  2. Die Nummer aus 3.3 ist eine p-adische Zahl, wobei b die Anzahl der Einträge des längsten Arrays ist. Wir haben die Zahl in das 10-adische Dezimalsystem umgewandelt. Dann sortierten wir der Größe nach.
Aktiv – und Passivsummen der Verlinkungen zwischen den Webseiten von Noixion.net Jan 2019. Quelle: Eigene Darstellung mit Excel

Zu 7) Wir finden auf die Art ein Ranking über die, nach n abgelaufenen Verlinkungen, meist verlinkten Seiten und die Seiten, die die meisten Seiten verlinken.
Die Seiten, die selber viel verlinken sind vergleichbar mit – Lead Usern, Influencern – einflussreichen Personen. Soziales Netzwerk á la Facebook sucht die Seiten dieser Personen dauerhaft. Sie gelten als die besten Träger und Verteiler für Werbung.

Zu 8) Damit haben wir zum Ende des Durchlaufs eine geordnete Übersicht aller Seiten einer Website. Also das Inhaltsverzeichnis. Die Methode ist wenig Speicherlastig, allerdings ohne Kapiteleinträge, die bei jedem Unterkapitel wieder bei eins anfangen zu zählen, sondern halt eine Inhaltsangabe, die fortlaufend durchzählt. Die andere Methode, mit wieder bei eins anfangenden Kapiteleinträgen, funktioniert bei uns mit hochgradig speicherfressenden mehrdimensionalen Arrays, auch deren Länge zu Anfang unbekannt ist. Die Methode ist blöd. Der Algorithmus kann abbrechen, weil die Anzahl der Einträge länger werden kann als der reservierte Speicher groß ist. Dagher besser die Speicherschonende Variante mit fortlaufender Kapitel-/Verzeichnisnummerierung nutzen!

Noixion.net-Sunburst-b-adisch sortierte hierarchische Darstellung nach Priorität der aktiv Verlinkungen ohne Tags. Quelle: Eigene Darstellung mit Excel Sunburst-Diagramm

Das Beitragsbild/Titelbild ist die b-adisch sortierte hierarchische Darstellung der Sitemap von Noixion.net (Jan 2019 mit Tags) als Sunburst-Hierarchie. Die Größe des Radianten bzw. der Flächen wird von Excel nach der Höhe der Aktivverlinkungen (Priorität) erzeugt.

SZ, 21.01.2019
SZ, 15.09.2022

nach Programmieren in Java für die Suchmaschinenoptimierung – Webspider und andere Spinnen – Sitemap und Konsistenzsummen