DOM-Scraping in GTM: Daten Extrahieren leicht gemacht

DOM-Scraping in GTM: Daten Extrahieren leicht gemacht

Management Summary

Das DOM-Scraping bietet in der Webanalyse eine nützliche Erweiterung zum Data Layer, um Inhalte aus der Website dynamisch auszulesen. Die schnelle & einfache Erfassung ist nur einer von vielen Vorteilen, die dadurch geboten werden. Dieser Artikel enthält eine Schritt für Schritt Anleitung, Vor- und Nachteile sowie Tipps zur optimalen Implementierung des DOM-Scrapings im Google Tag Manager.

Daten aus der Website auslesen, ohne auf einen Data Layer oder die IT angewiesen zu sein?  Diese Möglichkeit bietet das DOM-Scraping. Wie auch du sämtliche Inhalte dynamisch auslesen und für deine Analysen verwenden kannst, erfährst du hier!

Was bedeutet DOM?

Die Abkürzung DOM steht für Document Object Model und beschreibt den strukturierten Aufbau einer Website. Bildhaft lässt sich der DOM als Baumstruktur vorstellen. Die einzelnen Elemente innerhalb dieses Baumes werden als Knoten bezeichnet. Hierbei kann es sich beispielsweise um Überschriften, Texte, Bilder oder auch interaktive Elemente wie Links oder Buttons handeln.

Das Ziel von DOM-Scraping ist es, den Inhalt dieser Knoten dynamisch auszulesen.

Wofür wird DOM-Scraping verwendet?

Das DOM-Scraping bietet für die Webanalyse vielfältige Vorteile:

  • Einfaches Erfassen aller im DOM verfügbaren Inhalte
  • Schnelle Implementierung spart Zeit & Geld
  • Kein Eingreifen in den Website-Code nötig

Grundsätzlich gilt aber: Wenn ein Data Layer  vorhanden ist, sollte immer darauf zugegriffen werden. Das DOM-Scraping dient eher als Alternative oder Ergänzung.

Praktische Anwendungsbeispiele

Hier ein paar Beispiele für die sinnvolle Nutzung des DOM-Scrapings:

Use Case 1: E-Commerce Daten

Im E-Commerce Tracking spielen Produktdaten eine essentielle Rolle in der Webanalyse.

Mithilfe des DOM-Scrapings können sämtliche Daten der Produkte  extrahiert werden, sofern diese im Website-Code verfügbar sind: Produktname, Preis, Kategorien und vieles mehr. Der Vorteil ist, dass immer der aktuelle Inhalt der Seite ausgelesen wird. Wenn es beispielsweise mehrere Varianten eines Produkts gibt, wird immer der Inhalt erfasst, der gerade für den Nutzer sichtbar ist.

Zu beachten ist allerdings, dass die auf den einzelnen Seiten verfügbaren Produktdaten schwanken können und somit nicht immer zuverlässig verfügbar sind. Auch hier ist es empfohlen, einen E-Commerce Data Layer zu implementieren.

Use Case 2: Navigation

Du willst wissen, auf welche Links in deiner Navigation am häufigsten geklickt wird? Auch das kannst du  mittels DOM-Scraping herausfinden, indem du den Text des Menüpunkts erfasst.  Dies ist besonders praktisch, wenn sich die Inhalte der Navigation häufig verändern, zum Beispiel durch Kampagnen.

Use Case 3: Formular

Auch Inhalte eines abgesendeten Formulars können extrahiert werden. Wenn du also in deinem Analysetool sehen willst, welcher Grund für Reklamen im Support-Formular am häufigsten ausgewählt wird, oder welche Themen bei der Newsletter-Anmeldung die Beliebtesten sind, ist das der Way-to-go. Achtung: Immer den Datenschutz beachten, und keine personenbezogenen Daten erfassen!

Schritt für Schritt: Daten extrahieren im GTM

First things first: Das A und O liegt in der Planung. Es ist es wie immer wichtig zu beachten, nur Daten zu erfassen, die du später auch tatsächlich auswerten willst. Mehr ist nicht immer mehr!

Als nächstes identifizierst du die Elemente auf der Website, die den gewünschten Inhalt liefern.

Dazu kannst du die Entwickler-Tools verwenden. Öffne diese in deinem Browser und bewege dich mit der Maus über die Seite hin zu deinem Element. Nun kannst du das Element genauer untersuchen:

(Fast) jeder Knoten ist mit einem Selector ausgestattet. In den meisten Fällen handelt es sich um die ID oder eine Klasse. Diese wird nun in der Zwischenablage gespeichert, um sie später im GTM zu verwenden.

DOM Scraping - Element Referenzen

Hier wäre die ID des Elements “referenzen”.

Danach  geht es weiter im Google Tag Manager.  Es gibt zwei gängige Wege:

Weg 1: DOM Variable

Die DOM Variable verwendest du, wenn du eine eindeutige ID oder Klasse zu deinem Element gefunden hast.

  1. Erstelle eine neue Variable und wähle den Typ “DOM Element”.

DOM Scraping - DOM Element

  1. In der Variablen-Konfiguration wählst du zwischen ID oder CSS-Selector und fügst anschließend den  zuvor aus dem DOM kopierten Wert in das Eingabefeld.
  2. Optional: Wenn du anstatt des Textes den Wert eines Data-Attribute auslesen willst, fülle das Feld “Attribute Name” aus.

DOM Scraping - Konfiguration

  1. Testing: Öffne den Preview Mode und überprüfe den Wert deiner Variable.
  2. Schließlich fügst du die Variable zum gewünschten Tag hinzu, um sie an das  Analysetool zu übermitteln.

Weg 2: Custom JavaScript

Diesen Weg  wählst du beispielsweise, wenn es keinen direkten Selector für das gewünschte Element gibt.
Für diese Methode sind Grundkenntnisse in JavaScript erforderlich.

Sagen wir, unser Referenzen Headline hat ein Child-Element ohne eindeutige Klasse:

  1. Erstelle eine neue Variable und wähle den Typ “Custom JavaScript”

DOM Scraping - Custom Javascript

  1. Grundaufbau der Funktion: Eine JavaScript-Funktion muss eine bestimmte Syntax aufweisen und immer einen return-value enthalten.
  2. Element mit querySelector auswählen: Mithilfe der JavaScript Selector Funktionen kannst du dein Element auswählen.
  3. Text auslesen: Mit der .innerText Funktion kannst du  den Text eines Elements extrahieren. Willst du  stattdessen auf den Wert eines Data-Attibutes zugreifen, verwendest du das dataSet Object.
  4. Der fertige Code könnte folgendermaßen aussehen:

DOM Scraping - Code

  1. Debugging: Verwende die Console, um deinen Code zu debuggen. Tipps dazu findest du hier.
  2. Testing: Öffne den Preview Mode und überprüfe den Wert deiner Variable.
  3. Schließlich fügst du die Variable zum gewünschten Tag hinzu, um sie an das  Analysetool zu übermitteln.

Gratulation, du hast Website-Inhalte dynamisch mittels DOM-Scraping erfasst!

Achtung vor Fallstricken!

Das DOM-Scraping ist eine tolle Möglichkeit, Werte dynamisch auszulesen. Trotzdem ist Vorsicht geboten:

Veränderungen im DOM: Die Website-Struktur kann sich durch Anpassungen des Codes schnell verändern. Möglicherweise wird der Selektor des Elements umbenannt, oder der gewünschte Inhalt in einen anderen Knoten verschoben.

Für diese Fälle ist es nützlich, Fallback-Werte zu hinterlegen und die Werte regelmäßig in Reports zu überprüfen, um schnell handeln zu können.

Better Practice: Data Layer

Der Data Layer wurde extra dafür erstellt, Werte für das Tracking zu enthalten – der DOM nicht. Wenn also ein Data Layer vorhanden ist, sollte diese immer in erster Linie verwendet werden!

Fazit

Das DOM-Scraping bereichert deine Webanalyse mit Daten und ist ein schneller & unkomplizierter Weg, um relevante Inhalte erfassen zu können. Achte darauf, es aber als Ergänzung zum Data Layer zu betrachten. Greife wann immer möglich auf den Data Layer zurück, da dieser nicht nur verlässlicher ist, sondern auch unabhängig von Änderungen der DOM-Struktur bleibt.

Mit ein bisschen Routine & unter Einhaltung der Best Practices, um Fallstricke zu vermeiden, kannst auch du deine Analyse mit Daten aus dem DOM anreichern. Viel Spaß beim Ausprobieren!

Bereichere jetzt deine Daten mittels DOM-Scraping! Wir unterstützen dich gerne – kontaktiere uns unter: ​​kontakt@e-dialog.group

Frau mit Brille und Kopfhörern arbeitet zu Hause am Laptop und blickt in die Kamera. KI-generiertes Bild.
Relevante Inhalte

Mehr zum Thema Analytics