Hinweis: verwendet wurde die KNIME Version 4.1.1
Meine Kollegen und R-Sympathisanten Patrick Lürwer (Ausgangsskript der Crawlanalyse mittels R) und David Meyer (2020er Update der Crawalanalyse mittels R) hatten ja bereits anschaulich gezeigt, wie sich ein Abgleich von Crawls zu zwei verschiedenen Betrachtungszeiträumen mittels R umsetzen lässt.
In diesem Beitrag möchte ich unsere Mission – Crawlabgleich für Alle – weiter vorantreiben! Wenn Programmierkenntnisse nicht ausreichend vorhanden sind, und Excel nervt, stelle ich Euch unseren Crawlabgleich mit Hilfe von KNIME vor!
KNIME in aller Kürze
KNIME ist für alle „Noch-Nicht-Programmierer“ eine hervorragende freie Software zur interaktiven Datenanalyse. Mit seiner intuitiven Nutzeroberfläche und visuellen Darstellung der Funktionsknoten zur Datenmanipulation ist ein schneller Einstieg möglich. Einmal angelegt, lässt sich der Analyseprozess problemlos reproduzieren und mit dem eigenen Team teilen. Informationen zu Funktionen, Workspace-Individualisierung und dem knotenbasierten Arbeiten in KNIME gibt es hier.
Du hast noch keine oder erst wenig mit Erfahrungen mit KNIME, würdest es aber gerne in Deinen SEO Arbeitsalltag integrieren? Dann empfehlen wir mit unserer Einführung in KNIME für SEO zu starten. Alternativ bieten wir auch eine umfassende KNIME Schulung an.
Crawlabgleich für SEO: Wieso, Weshalb – Darum!
Ein neuer Crawl ist wie ein neues Leben! Momentaufnahmen der aktuellen Website sind natürlich wichtig und sinnvoll, um initial Ad-Hoc Maßnahmen ableiten zu können und in den sogenannten Arbeitsmodus zu kommen.
Läuft der SEO-Prozess bereits etwas länger bzw. arbeiten viele Beteiligte an einer Domain, lohnt es sich, einen automatisierten Monitoring-Prozess zu etablieren, der in regelmäßigen Abständen die Domain crawlt und Veränderungen dokumentiert.
Beispiele hierfür sind:
- Geänderte Statuscodes
- Neue/nicht mehr verlinkte URLS
- Geänderte Titles & Descriptions
So behält man den Überblick und kann schnell reagieren, sollten die Änderungen nicht bewusst vorgenommen worden sein.
Intern liebevoll als „Befruchtungsfolie“ bezeichnet, liefert Abb. 1 einen Überblick über die für uns interessanten Schnittmengen beider Crawls.
Los geht’s: Mit KNIME zum eigenen Crawlabgleich
KNIME sowie das Crawling-Tool Deiner Wahl (z.B Screaming Frog SEO Spider oder Xenu) sind installiert. Das notwendige Hintergrundwissen hinsichtlich KNIME für SEO ist auch vorhanden und zwei verschiedene Crawls Deiner Domain warten förmlich darauf abgeglichen zu werden? Wunderbar – Dann können wir starten.
Beide Crawls einlesen und zusammenfassen
Zuerst beginnen wir damit die beiden Crawl-Exporte (genutzt wurden der internal-all Export von Screaming Frog SEO Spider) mittels File Reader einzulesen und die Konfigurationseinstellungen anzupassen.
Anschließend werden beide Crawlimporte mittels Joiner anhand des Schlüssels Address gematcht. Da wir für die weitere Analyse alle URLs des alten Crawls sowie des neuen Crawls benötigen, wählen wir den Modus Full Outer Join.
Hinweis: Der ältere Crawl sollte als linke Eingabetabelle fungieren. Im KNIME-Versium bedeutet dies, dass der alte Crawl als obere Eingabetabelle in den Joiner -Knoten einläuft (Siehe Abb.3)
Der Full Outer Join bewirkt, dass die Sammel-Ausgabetabelle alle URLs (wurden als Schlüsselkriterium definiert) enthält. Die Ausgabetabelle ist wie folgt aufgebaut:
- URLs, die in beiden Crawls vorhanden sind (hier blau markiert).
- URLs, die lediglich in der linken Eingabetabelle (alter Crawl) vorhanden waren (hier gelb markiert).
- URLs, die lediglich in der rechten Eingabetabelle (neuer Crawl) vorhanden waren (hier grün markiert).
Vorbereitung der Daten
Anschließend reduzieren wir den Datensatz und beschränken uns auf HTML-URLs. Hier benutzen wir den Rule-Based Row Filter und reduzieren beide Content-Spalten (alt und neu) auf HTML. Sollten PDFs oder Bilder Teil Eurer SEO-Strategie sein, können die natürlich auch genauso gut enthalten bleiben.
Anschließend ergänzen wir mittels Rule Engine zusätzlich beide Crawls um die Ausprägung „Indexable“ in der Spalte „Indexibility Status“. Diese Spalte enthält initial beispielsweise die Angaben zur Nicht-Indexierbarkeit wie „redirected“, „canonicalized“ oder „Client Error“. Die Zellen indexierbarer URLs sind bisher leer. Wir machen hier die Indexierbarkeit also explizit, die zuvor nur implizit durch den fehlenden Wert angegeben wurde.
Last but not least ergänzen wir ebenfalls mittels Rule Engine noch eine weitere Hilfsspalte, die definiert, ob eine URL in beiden Crawls vorhanden ist, “Nicht mehr verlinkt” wird, oder ”Neu verlinkt” wird.
Abgleich der Crawldaten
Anschließend sind unsere Daten soweit aufbereitet, sodass wir mit dem Crawlabgleich starten können. Folgende Aspekte wollen wir näher untersuchen:
- Wie ist die Verteilung hinsichtlich identischer, neuer, nicht mehr verlinkter URLs?
- Welche URLs sind neu verlinkt worden?
- Welche URLs sind nicht mehr verlinkt?
- Haben sich SEO-relevante Merkmale der identischen URLs verändert?
Prüfung hinsichtlich der Verteilung
Mittels GroupBy wird anhand der neu geschaffenen Hilfsspalte die Verteilung hinsichtlich: identischer URLs, neuer URLs und nicht mehr verlinkter URLs geprüft.
Die Aggregierung (Methode: count) erfolgt anhand der Spalte “Address”.
Anschließend passen wir die Spaltenbenennung von “Address” an, da hier nun die Anzahl an URLs zu finden ist. Zuletzt exportieren wir die Output-Tabelle.
Da wir den kompletten Crawlabgleich in eine Excel Datei exportieren wollen, nutzen wir den Knoten Excel Sheet Appender um den Output als Tabellenblatt zu exportieren.
Prüfung neu verlinkter URLs
Da uns in diesem Prüfpunkt nur die URLs interessieren, welche im alten Crawl nicht vorhanden waren, im neuen Crawl jedoch hinzugekommen sind, filtern wir unsere Datenmenge mittels Row Filter.
Da die Werte des alten Crawls für diese Prüfung nicht benötigt werden, reduzieren wir die Datenmenge weiterhin mittels Column Filter und berücksichtigen nur noch die Spalten des neuen Crawls (rechte Eingabetabelle).
Anschließend reduzieren wir die Output-Tabelle weiter auf die für uns zum SEO-Monitoring relevanten Spalten.
Da in unserem Screaming Frog Export die Spalten Title, Meta Description, Meta Robots und Canonical Link Element den Wert 1 im Spaltennamen haben, benennen wir die betroffenen Spalten mittels Column Rename um.
Die Output-Tabelle ergänzen wir anschließend ebenfalls mittels Excel Sheet Appender als Tabellenblatt für unsere finale Excel Export Datei.
Prüfung nicht mehr verlinkter URLs
Da wir in diesem Abschnitt nur URLs betrachten wollen, die im alten Crawl enthalten waren, im neuen jedoch fehlen, filtern wir unsere Datenmenge zuerst mittels Row Filter. Genau wie im vorherigen Abschnitt reduzieren wir anschließend unsere in der Output-Datei enthaltenen Spalten auf die des alten Crawls und belassen nur die für uns interessanten Spalten in dem Datenset (siehe Abbildung 12). Die Reduzierungen erreichen wir erneut mittels Column Filter.
Wir wissen ja, dass die verbliebenen URLs aktuell nicht mehr intern verlinkt werden. Ist dies nun ein Problem oder genau richtig? Das finden wir heraus, indem wir mittels HttpRetriever den aktuellen Statuscode der nicht mehr verlinkten URLs abrufen. (Für den HttpRetriever benötigt ihr die Palladian Extension.)
Haben die URLs beispielsweise einen Statuscode 404, 410 oder werden weitergeleitet, wurden die URLs ja in der Regel legitimerweise aus der internen Verlinkung entfernt.
Haben die URLs aktuell jedoch einen 200er Statuscode, stellt sich natürlich die Frage, ob die Seite nicht mehr existieren soll und dementsprechend nicht besser eine Weiterleitung eingerichtet oder ein Fehlercode ausgespielt werden sollte.
Wurden die Links unbewusst entfernt und soll die URL weiterhin bestehen und für den Nutzer und Crawler zugänglich sein, sollte der Link wiederhergestellt werden.
Anschließend entfernen wir die für uns überflüssige Spalte „Result Object“, benennen die Spalten für unseren Empfänger verständlich um und sortieren die Spalten mittels Column Resorter. Anschließend können wir den Output erneut als Tabellenblatt exportieren.
Prüfung der Änderungen SEO-relevanter Merkmale identischer URLs
Statuscode-Änderungen ermitteln
Vorbereitend reduzieren wir unsere Datenmenge mittels Row Filter auf alle identischen URLs aus unserer Hilfsspalte.
Unser erster Betrachtungspunkt sind Änderungen im Status Code der in beiden Crawls vorhandenen URLs. Hierfür schließen wir mittels Column Filter alle URLs aus, deren Status Codes identisch geblieben sind.
Anschließend reduzieren wir den Output noch auf die für uns spannenden Spalten und benennen diese für den Leser verständlich um.
Das gleiche Vorgehen wiederholen wir anschließend jeweils für die für uns spannenden Merkmale:
- Änderungen der Title-Tags
- Änderungen der Meta-Beschreibungen
- Änderungen der Canonical-Tags
- Änderungen der Meta-Robots-Tags
- Änderungen der H1-Überschrift
Je nach Bedarf können natürlich noch weitere Merkmale eines Screaming Frog Crawls abgeglichen werden. Über die Custom-Extraction des Screaming Frog könnt ihr darüber hinaus sehr individuelle Metriken prüfen – bspw. ob sich der Preis eines Produkts geändert hat. Einen derartigen Use Case hat mein Kollege Johannes Kunze auf der SEOKomm 2019 vorgestellt. Hier findet ihr seinen Blogpost dazu.
Jeden Prüfpunkt ergänzen wir als eigenes Arbeitsblatt in unserer finalen Ausgabe-Datei mittels Excel Sheet Appender.
Kontinuierliches Monitoring mit dem Crawlabgleich
Fertig ist der eigene KNIME Workspace zum Abgleichen zweier Crawls. Der Crawlabgleich lässt sich natürlich individuell an Eure Bedürfnisse für ein Website-Monitoring anpassen. Den fertigen Crawlabgleich von get:traction für KNIME könnt ihr Euch auch hier herunterladen.
Anna Danzer
SEO CONSULTANT
Während meines Studiums der Wirtschaftswissenschaften mit den Schwerpunkten Marketing & Management an der Universität Passau faszinierte mich das Online-Marketing schon früh; zur gleichen Zeit sammelte ich erste Berufserfahrungen in einer ortsansässigen SEO-Agentur. Hier entdeckte ich schnell meine Leidenschaft für die organische Suchmaschinenoptimierung, da hier sowohl datengetriebenes Arbeiten als auch analytisches Denken von entscheidender Bedeutung sind. Die organische Suchmaschinenoptimierung ist in meinen Augen ein dynamisches Spannungsfeld zwischen Technik, Psychologie und Marketing. Des Weiteren steht und fällt eine langfristig hohe Sichtbarkeit von Webseiten mit der Verzahnung von Suchmaschinenkonformität und Nutzerorientierung. Als SEO-Consultant bei get:traction kann ich diesen Leitsatz optimal umsetzen.
2 Kommentare:
Hallo,
tolle Idee! Leider ist jedoch der Download des SEO Crawlabgleich nicht mehr möglich. Eventuell nicht mehr online?
Hallo, vielen Dank für den Hinweis! Wir haben die entsprechenden Verlinkungen angepasst, sodass du jetzt loslegen kannst.