Der Artikel gibt eine Reihe praktischer Beispiele und Impulse, wie SEO-Tools den Alltag eines SEA-Kampagnen-Managers erleichtern können. Insbesondere werden Crawling- und Scraping-Techniken vorgestellt, um Websites strukturell und inhaltlich zu erfassen. Die so gewonnenen Informationen können zum Kampagnen-Set-up, Ausbau, zum Check und zur Optimierung von Kampagnen verwendet werden.
Was SEAs von SEOs lernen können
oder: Wie SEO-Tools den SEA-Alltag erleichtern können // oder: SEO-Tools im SEA-Alltag
Websites mit Crawlern strukturell erfassen
Eine gut überlegte Kampagnenstruktur ist einer der Schlüsselfaktoren zum Erfolg im SEA. Zum einen sollten Anzeigengruppen möglichst fein gegliedert sein, um eine bestmögliche Relevanz zu erreichen. Zum anderen sollte die Struktur effektives Monitoring, Reporting und Management ermöglichen.
Beim Set-up, bei der Neustrukturierung bzw. beim Ausbau eines AdWords-Kontos steht somit oft die Frage der Struktur. Eine bewährte Methode ist, die Kampagnen anhand der Website zu strukturieren, d. h. Kampagnen pro Kategorie und Anzeigengruppen pro Unterkategorie und/oder Produkten zu erstellen. Genau an diesem Punkt können SEO-Tools eine große Erleichterung darstellen, indem die Struktur einer Website in eine mit Excel verarbeitbare Form gebracht wird.
Crawler wie Xenu (Kostenlos unter einfach.st/xenu) oder der Screaming Frog (Bis 500 URL kostenlos nutzbar, einfach.st/frog) können zur strukturellen Erfassung von Websites unterstützend eingesetzt werden. Beide Tools gibt es als kostenlose Versionen zum Download – Screaming Frog ist in der kostenlosen Version etwas limitiert.
Was genau machen diese Tools? Ein Crawler „klickt“ quasi jeden Link innerhalb einer Website an, speichert den Link und liest diverse standardisierte Informationen (z. B. Title, Meta-Informationen) aus den gewonnenen URLs aus.
Am Beispiel von Xenu lassen sich unter anderem die Crawling-Tiefe (wie viele Ebenen von der angegebenen Start-URL sollen gecrawlt werden) und die maximale Anzahl paralleler Anfragen voreinstellen (s. Abb. 01). Da auch für das hier gezeigte Anwendungsbeispiel irrelevante Bilder, CSS und JavaScript-Links ausgelesen werden, sollten diese von vornherein ausgeschlossen werden (s. Abb. 02).
Als Ergebnis liefert Xenu eine Liste im TSV-Format (TSV = Tab-Separated Values; mit Excel zu öffnen), die gefiltert auf den Type = text/html die Liste aller zu crawlenden URLs ergibt (s. Abb. 03).
Ist die Website URL-seitig in Verzeichnissen strukturiert, kann diese Liste zur Strukturierung eines AdWords-Kontos genutzt werden, indem die URLs in ihre Bestandteile aufgesplittet werden (Beispiel s.Abb. 04).
In unserem Beispiel soll aus den ersten beiden Kategorieebenen jeweils eine Kategoriekampagne entstehen. AdGroups sollen die Unterkategorien werden, die keine weiteren Unterkategorien haben. Für diese wiederum sollen eigene Kampagnen angelegt werden. Als AdGroup soll die jeweils letzte Ebene fungieren. Hauptkeyword der so gewonnenen AdGroup soll ein Broad Match Modifier Keyword, bestehend aus den Hauptkategorien und dem spezifischen Unterkategorienamen, werden (Hinweis: Mit dem „Modifierzeichen „+“ können Keywords mit der Einstellung „Weitgehend passend“, also Broad Match, genauer ausgesteuert werden – weitere Infos unter einfach.st/modif1).
Der Ablauf, um hieraus eine in den AdWords-Editor (den Offline Editor für AdWords von Google, kostenlos unter einfach.st/adwedit) ladbare Datenkopie zu bekommen, ist folgender:
- URLs in Verzeichnis- und Dateinamen aufsplitten.
- Ermitteln, ob die Kategorie Unterkategorien hat.
- Entscheidung bzgl. Kampagnenname und Generierung Kampagnenname.
- AdGroup-Namen generieren.
- Keyword generieren.
Das Aufsplitten der URLs kann durch die Excel-Funktion „Text in Spalten“ mit Trennzeichen „/“ (s. Abb. 05) oder durch die Funktion TEIL in Verbindung mit FINDEN erfolgen.
Verkürzt auf die wirklich relevanten Kategoriespalten kommt im Ergebnis eine Liste von vier Spalten heraus. Zunächst wird nun ermittelt, auf welcher Hierarchieebene die jeweilige Unterseite aufgehangen ist (Spalte E):
=WENN(D4<>"";4;WENN(C4<>"";3))
Als Nächstes soll ermittelt werden, ob eine Kategorie Unterseiten hat, um die Zuordnung zur entsprechenden Kampagne treffen zu können. Dies erfolgt durch die Benutzung der ZÄHLENWENN-Funktion, welche prüft, wie oft die jeweilige Kategorie in der Liste vorkommt (Spalte F):
=WENN(ZÄHLENWENN(C:C;C4)<>1;"Ja";"Nein")
Basierend auf dieser Information wird entschieden, wie der Kampagnenname zusammengesetzt wird (Spalte G):
="01 - "&GROSS2(A4)&" - "&GROSS2(B4)&WENN(F4="Ja";" - "&GROSS2(C4);"")
Umlaute können hierbei zudem durch die WECHSELN-Funktion übersetzt und Großschreibung durch die GROSS2-Funktion umgesetzt werden.
Nach ähnlichem Muster werden Anzeigengruppennamen (Spalte H) generiert:
=WENN(E4=3;GROSS2(C4);GROSS2(D4))
Last, but not least, wird das Hauptkeyword (Spalte I)der AdGroup hervorgebracht:
="+"&GROSS2(A4)&" +"&GROSS2(B4)&" +"&WENN(E4=3;GROSS2(C4);GROSS2(D4))
Das Ergebnis lässt sich nun per Copy & Paste in den AdWords-Editor einfügen. Danach sind noch Kampagneneinstellungen, AdGroup-Gebot und Matchtypes zu setzen – fertig ist eine Rumpfkampagne.
Bonustipp: Nach ähnlichem Prinzip können auch Template-basierte Anzeigentexte oder AdGroup-spezifische Sitelinks erstellt werden.
Tipp der Redaktion
Beim Scrapen fremder Webseiten sollte man immer darauf achten, nicht zu viele automatisierte Anfragen gleichzeitig zu erzeugen. Bekommt der Sitebetreiber durch solche Abfragen ein Performanceproblem oder gar messbare Timeouts auf dem Webserver, könnte man solche Abfragen ggf. als sog. Denial-of-Service(DoS)-Attacke interpretieren, die strafrechtlich durchaus verfolgbar wäre. Normalerweise machen derartige Aktivitäten keine nennenswerten Probleme und bleiben sogar in der Regel völlig unbemerkt, weil die meisten Webanalytics-Tools maschinelle Anfragen gar nicht auswerten bzw. mit ausgeben. In den Logfiles des Webservers sind sie allerdings exakt mit Datum und Uhrzeit sowie mit IP-Adresse gespeichert und können im Fall eines Schadens durch offiziell eingeschaltete Stellen durchaus rückverfolgt werden. Bei allzu intensivem Scraping innerhalb einer sehr kurzen Zeitspanne sollte man sich dieser möglichen Folgen also bewusst sein – auch wenn das „Risiko“ in der Praxis überschaubar gering ausfällt und daher meist einfach ignoriert wird.
Website-Inhalte mittels Scraping-Techniken ermitteln
Ist eine Website nicht in Verzeichnisse strukturiert, können wir, basierend auf diesen URLs, mittels Scraping-Techniken nutzbare Informationen gewinnen. Im Folgenden werden hierzu die SEO-Tools for Excel (siehe hierzu ausführlich den Titelbeitrag der Website Boosting Ausgabe 20) genutzt. Dieses kostenlose Excel-Add-in bietet viele nützliche Funktionen, z. B. Scraping/XPathOnUrl. Mittels dieser Funktion können, basierend auf einer URL und dem sogenannten XPath, ganz dediziert Einzelelemente einer Webseite (z. B. Preis, Marke) ausgelesen werden. Voraussetzung für die Anwendung ist eine valide HTML-Struktur der Website. Daneben bietet das Tool vorgefertigte Funktionen für die Ermittlung bestimmter Standard-HTML-Elemente (z. B. Title, H1-Überschrift) oder zum Zählen bestimmter Zeichenketten (IsFoundOnPage).
Um die Funktion XPathOnUrl nutzen zu können, muss der XPath – also die genaue Adresse – eines Elementes auf der Seite bekannt sei. Dazu stellen Browser Hilfsmittel zur Verfügung.
Im Chrome kann der XPath mit Klick der rechten Maustaste auf ein zu analysierendes Element, die Auswahl „Element untersuchen“ und nach Öffnung der Konsole im unteren Bereich mit nochmaligem Klick auf die rechte Maustaste + „Copy XPath“ ermittelt werden.
Beim Firefox funktioniert das mit installiertem Plug-in Firebug ähnlich: Mit rechter Maustaste auf ein Element klicken, Element mit Firebug untersuchen, in der sich öffnenden Konsole rechte Maustaste auf das Element und XPath kopieren.
Als einleitendes Beispiel folgt hier die Ermittlung des Kategoriebaumes einer Seite über den Breadcrump, der wie oben gezeigt zur Erstellung einer Kampagnengrundstruktur verwendet werden kann. Der Wert des XPathes (Zelle B2) wird, wie in Abb. 07 und 08 gezeigt, im Browser ermittelt.
Im Folgenden sollen drei konkrete Anwendungsbeispiele aus dem SEA-Bereich zum Thema Scraping im Detail erläutert werden:
1. Fehlerhafte Seiten mittels Scraping aufspüren
Im SEA gebuchte Zielseiten müssen technisch funktionieren, bei Shops Produkte beinhalten (und keine Fehlermeldungen) und eine möglichst hohe Relevanz zur Suchanfrage haben. Alle drei Punkte lassen sich mit der Kombination Xenu und SEO-Tools for Excel prüfen.
Die erste Stufe der technischen Funktionstüchtigkeit (eigentlich kein Scraping) kann geprüft werden, indem man eine Linkliste in Xenu lädt und prüfen lässt oder die Liste der URLs mittels der Excel-Funktion aus den SEO-Tools for Excel „HttpStatus“ prüft. Die Funktion gibt zudem bei Redirects das Redirect-Ziel zurück, welches wiederum getestet werden kann. Tracking-Parameter beziehungsweise Redirects können zuvor durch die WECHSELN-Funktion entfernt und decodiert werden.
Eine weitere Fehlerquelle hinsichtlich der Zielseiten ist die Verlinkung in Kategorien oder in Suchergebnisse, zu denen es aufgrund von Sortimentsveränderungen keine Produkte mehr gibt. Liefern diese Seiten keinen technischen Fehler, können sie inhaltlich hinsichtlich bestimmter Fehlertexte oder der Anzahl bestimmter Elemente geprüft werden.
Fehlermeldungen (z. B. keine Produkte bei Verlinkung in ein Suchergebnis oder in eine Kategorie) sind mit der Funktion IsFoundOnPage zu ermitteln.
2. Relevanz von Zielseiten mittels Scraping bewerten
Beim Thema Relevanz kann man weit ausholen und beispielsweise ein eigenes Bewertungssystem mit gewichteten Faktoren zusammenstellen. Bei Shops und generischen – nicht produktbezogenen – Kampagnen kann auch schon die Anzahl der auf einer Zielseite vorhandenen Produkte eine Aussage über die Relevanz der Seite treffen. Produkte sind im HTML-Code einer Seite meist anhand bestimmter CSS-Klassen erkennbar (z. B. ProductName). Wenn man wie oben schon beschrieben ein Produktelement (z. B. den Namen oder das Bild) auswählt und mit der rechten Maustaste das Element untersucht, wird man in der dann aufgehenden Konsole schnell solche CSS-Elemente oder IDs finden. Diese können mithilfe der Funktion IsFoundOnPage gezählt werden.
Zudem wird die Anzahl der vorhandenen Produkte häufig direkt auf der Seite angezeigt, welche mittels der Funktion XPathOnURL ausgelesen werden kann:
Dieses Vorgehen eignet sich sehr gut, um regelmäßig bestimmte Seitenkategorien hinsichtlich ihrer Produktbestückung zu prüfen.
Weiterhin spiegelt aus SEA-Sicht eine relevante Landingpage erst mal die Suchanfrage des Users auf den ersten Blick wider. Der dazu auffälligste und auslesbare Punkt ist die Hauptüberschrift (in der Regel H1), welche sich mit der Funktion HtmlH1 ermitteln und prüfen lässt.
Ob der Begriff überhaupt irgendwo auf einer Seite oder wie oft (hoffentlich liest Karl das nicht J) er vorkommt, kann mittels der Funktion IsFoundOnPage ermittelt werden.
Gewichtet man diese Faktoren, kann aus einer Liste von vielen möglichen Zielseiten die theoretisch am besten passende herausgefunden werden. Dieses Vorgehen eignet sich beispielsweise zur Prüfung von Keywords mit besonders niedrigem Qualitätsfaktor und hohen Kosten.
3. Scraping zur Erstellung eines Produktdatendumps
Ein weiteres Anwendungsbeispiel zu Scraping-Techniken ist die Erstellung eines Produktdatendumps zur Verwendung in Google Shopping/Merchant Center. Basierend auf einer Liste von Produkt-URLs soll gezeigt werden, wie aus den in den Seiten befindlichen Informationen eine Liste von Produktinformationen zusammengestellt werden kann.
Als Pflichtfelder sollen URL, Name, Kategorie, Marke, Bild-URL, Preis und ID ermittelt werden. Sind die Informationen in der Website vorhanden, können Sie mittels XPathOnURL ausgelesen werden. Sind die Ausgangsseiten gleich strukturiert, muss der jeweilige XPath nur einmal ermittelt werden und kann auf beliebig viele Produktseiten angewendet werden.
Im Unterschied zu den bisher gescrapten Elementen besitzen manche Tags (z. B. IMG-Tag, Meta-Tags) keinen eigenen Inhalt. Die Quelle des Bildes ist in einem Attribut (src = Quelle) abgelegt, die Inhalte der Meta-Tags im Attribut content. Hierzu bietet die Funktion XPathOnURL zusätzliche optionale Parameter, mit deren Hilfe auch auf Attribute eines HTML-Elementes zugegriffen werden kann. Am in Abb. 15 gezeigten Beispiel trifft das auf die Marke zu, die aus dem ALT-Tag des Marken-Logos extrahiert wird, sowie auf die Bild-URL und den Preis (bezieht sich auf Attribut content der Meta-Informationen). Die so gewonnene Liste aus XPathes kann für weitere URLs zur Vorbereitung des Produktdumps genutzt werden. Der Übersichtlichkeit halber werden die Daten zeilenweise dargestellt. Zur Erstellung eines Dumps empfiehlt sich eine Anordnung in Spalten.
Fazit
SEO-Tools wie Crawler und Scraping-Tools können einen SEA-Kampagnen-Manager bei der Arbeit unterstützen und zeitaufwendige Tasks insbesondere durch Skalierbarkeit deutlich erleichtern bzw. verkürzen.
Weitere Anwendungsbeispiele sind:
- Erstellung von Anzeigentexten teilautomatisch beziehungsweise Templatebasiert
- KeywordRecherche (z. B. Auslesen von Meta-Keywords, sofern vorhanden)
- Konkurrenzanalyse
Limitiert sind die SEO-Tools for Excel hinsichtlich der Performance. Listen von mehr als 5.000 URLs können je nach Hardware, Ladezeit der zu prüfenden Seiten und Seitengröße schnell zu Problemen und Abbrüchen führen. Mit guter Vorsortierung (z. B. absteigend nach Anzahl der Klicks bei Zielseitenchecks) und sequenzieller Abarbeitung kann dieses Problem oft umgangen werden.
Die mit den vorgestellten Browsermethoden ermittelten XPathes funktionieren mit den SEO-Tools for Excel leider nicht immer. Mitunter hilft es, einen anderen Browser zu benutzen, mal liegt es aber auch an der Seitenstruktur. Häufig hilft auch, wenn man nach dem Inhalt des zu ermittelnden Elementes sucht und es an anderer, nicht direkt sichtbarer und verwendbarer Stelle wiederfindet (bspw. in den Meta-Informationen).
Bei allen Schritten sollte bedacht werden, dass die Ergebnisse und deren Qualität nur so gut sind wie die dahinterliegenden Konzepte. Viele der vorgestellten Tasks (insb. die Erstellung von Rumpfkampagnen) erfordern manuelle Nacharbeit und Prüfung durch den Kampagnenmanager. SEA ist und bleibt Handwerk, darum gilt wie so oft die Regel: Lassen Sie sich die Arbeit abnehmen, aber nicht das Denken!
Alle gezeigten Beispiele gibt es zum Download unter einfach.st/inbiz