SEO Crawlabgleich für Alle – Mit KNIME

KNIME Crawlabgleich Blogbeitragbild

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.

Sie wollen KNIME lernen? Buchen Sie unsere KNIME Schulung für SEOs

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.


Abb. 1: Crawlabgleich Schnittmengen der Websiteänderungen

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.


Abb. 2 Konfiguration Joiner Knoten

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)


Abb. 3: Joinen beider Crawls zum Abgleich im KNIME

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).

Abb. 4: Beispiel Ausgabetabelle nach dem Joinen beider Crawls in KNIME

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.


Abb. 5 Konfiguration Rule-Based Row Filter

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.


Abb. 6 Konfiguration Rule Engine

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.


Abb. 7 Konfiguration Rule Engine zur Ergänzung einer Hilfsspalte

Abb. 8: KNIME Workflow um Datenaufbereitung und Anreicherung erweitert

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.


Abb. 9: Abgleich der Crawldaten – Schritt Verteilungsprüfung

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.


Abb. 10: Einstellung Row Filter zur Selektion neu verlinkter URLs

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).


Abb. 11: Reduktion der Spalten auf Daten des neuen Crawls

Anschließend reduzieren wir die Output-Tabelle weiter auf die für uns zum SEO-Monitoring relevanten Spalten.


Abb. 12: Reduktion der Spalten zur Weiterverarbeitung

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.


Abb. 13: Umbenennung der Spaltennamen

Die Output-Tabelle ergänzen wir anschließend ebenfalls mittels Excel Sheet Appender als Tabellenblatt für unsere finale Excel Export Datei.


Abb. 14: Abgleich der Crawldaten – Schritt neu verlinkte URLs

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.


Abb. 15: Abgleich der Crawldaten – Schritt nicht mehr verlinkte URLs

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.


Abb. 15: Abgleich der Crawldaten – Abgleich der identischen URLs auf Änderungen

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.  

SEO Crawlabgleich herunterladen

Sie wollen KNIME lernen? Buchen Sie unsere KNIME Schulung für SEOs

Mittels Screaming Frog Scheduler und dem Windows Aufgabenplaner können die Crawls automatisch zu einem regelmäßigen Zeitpunkt gestartet und in eine vordefinierte Ordnerstruktur exportiert werden. Details, wie ihr ScreamingFrog per Batch-Datei mittels Windows Aufgabenplaner starten könnt, findet ihr hier. Somit erhaltet ihr automatisiert in regelmäßigen Abständen Crawl-Exporte, die Ihr oder Eure Kollegen zum kontinuierlichen Website-Monitoring nutzen können.-Monitoring nutzen können.

Wie immer ist ein großer Vorteil von KNIME der, dass die erstellten Workflows immer wieder neu verwendet werden können und nur die Input-Tabellen aktualisiert werden müssen. Auch Euren KNIME-Workflow könnt ihr mit dem Windows Aufgabenplaner starten. Somit habt ihr in regelmäßigen Abständen einen Blick „Hinter die Kulissen“ und erfahrt, was gerade auf Eurer Website passiert. Dadurch könnt ihr auf unliebsame Überraschungen wie beispielsweise Entstehung einer Vielzahl an neuen indexierbarer URLs, unbewusste Änderungen der Meta-Tags etc. schnell reagieren.

The following two tabs change content below.
blank

Anna Danzer

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.
blank

Neueste Artikel von Anna Danzer (alle ansehen)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Kontaktieren Sie uns & profitieren Sie von mehr Traktion durch SEO!

SEO Berlin – [sichtbar & erfolgreich]
Wielandstraße 9, 12159 Berlin
030 / 296 73 998
berlin@gettraction.de

SEO Darmstadt- [sichtbar & erfolgreich]
Heinrich-Hertz-Straße 6, 64295 Darmstadt
06151 / 860 69 85
darmstadt@gettraction.de

5 Gründe für get:traction:

  • individuelle SEO-Beratung & -Betreuung
  • keine Abnahmeverpflichtung
  • zertifizierte SEO-Experten
  • transparente & faire Arbeitsweise
  • nachhaltige SEO-Strategien