Verwendung von Python-Skripten zur Analyse von SEO und defekten Links auf Ihrer Website
Python dient dazu, sich wiederholende Aufgaben zu automatisieren, sodass mehr Zeit für Ihre anderen Bemühungen zur Suchmaschinenoptimierung (SEO) bleibt. Nicht viele SEO-Experten nutzen Python zur Problemlösung, obwohl es Ihnen viel Zeit und Mühe sparen könnte. Python kann zum Beispiel für folgende Aufgaben verwendet werden:
- Datenextraktion
- Vorbereitung
- Analyse & Visualisierung
- Maschinelles Lernen
- Deep Learning
Wir werden uns in diesem Artikel hauptsächlich auf die Datenextraktion und -analyse konzentrieren. Die benötigten Module werden für jedes Skript angegeben.
Python SEO Analyzer
Ein wirklich nützliches Skript zur Analyse Ihrer Website heißt „SEO analyzer“. Es ist ein Allround-Website-Crawler, der die folgenden Informationen analysiert:
- Wortanzahl
- Seitentitel
- Meta-Beschreibung
- Keywords auf der Seite
- Warnungen
- Fehlender Titel
- Fehlende Beschreibung
- Fehlender Alt-Text für Bilder
Dies ist großartig für eine schnelle Analyse Ihrer grundlegenden SEO-Probleme. Da Seitentitel, Meta-Beschreibungen und Keywords auf der Seite wichtige Ranking-Faktoren sind, ist dieses Skript perfekt, um ein klares Bild von möglichen Problemen zu erhalten.
Verwendung des SEO-Analysators
Nachdem Sie die notwendigen Module (BeautifulSoup 4 + urllib2) für dieses Skript installiert und Ihr Python auf Version 3.4+ aktualisiert haben, sind Sie technisch bereit, dieses Skript zu verwenden. Json oder funktionierende Varianten können jedoch für den Export der Daten, die Sie vom SEO-Analysator erhalten, nützlich sein. Nach der Installation des Skripts können Sie folgende Befehle verwenden:
seoanalyze http://internetvergelijnk.nl/
seoanalyze https://telefoonvergelijk.nl --sitemap https://telefoonvergelijk.nl/sitemap_index.xml
Wie in den obigen Beispielen zu sehen ist, ist es sowohl für internetvergelijk als auch für telefoonvergelijk möglich, entweder die Website oder die XML-Sitemap einer Website zu crawlen, um eine SEO-Analyse durchzuführen. Eine weitere Option ist die Generierung von HTML-Ausgaben aus der Analyse anstelle der Verwendung von JSON. Dies kann mit folgendem Befehl erfolgen:
seoanalyze http://internetvergelijk.nl/ --output-format-html
Wenn Sie JSON installiert haben und die Daten exportieren möchten, verwenden Sie den folgenden Befehl:
from seoanalyzer import analyse output = analyse(site, sitemap) print(output)
Sie können auch einen alternativen Weg wählen und die Analyse als Skript ausführen, wie im folgenden Beispiel zu sehen ist:
Dies exportiert die Datei nach Ausführung des Skripts –output-format html in eine HTML-Datei. Dieses seoanalyze-Skript ist großartig für die Optimierung Ihrer Seitentitel, Meta-Beschreibungen, Bilder und Keywords auf der Seite. Es ist auch viel schneller als Screaming Frog, daher ist die Ausführung des seoanalyze-Skripts effizienter, wenn Sie nur nach diesen Informationen suchen.
Link-Status-Analysator
Eine weitere Möglichkeit, Python für die Suchmaschinenoptimierung zu nutzen, ist die Verwendung eines Skripts, das Ihre Website crawlt und Ihre URL-Statuscodes analysiert. Dieses Skript heißt Pylinkvalidator und kann hier gefunden werden. Alles, was es benötigt, ist BeautifulSoup, wenn Sie es mit Python 3.x ausführen. Wenn Sie eine 2.x-Version wie 2.6 oder 2.7 verwenden, benötigen Sie BeautifulSoup nicht.
Um das Crawling zu beschleunigen, kann es jedoch nützlich sein, die folgenden Bibliotheken zu installieren:
1) lxml – Beschleunigt das Crawling von HTML-Seiten (erfordert C-Bibliotheken) 1) gevent – ermöglicht pylinkvalidator die Verwendung von Green Threads 1) cchardet – Beschleunigt die Erkennung der Dokumentenkodierung
Behalten Sie dies im Hinterkopf, sie könnten sehr nützlich für das Crawling größerer Websites sein und nur den Link-Status-Analysator verbessern.
Was dieses Skript im Wesentlichen tut, ist das Crawling der gesamten URL-Struktur einer Website, um die Statuscodes jeder einzelnen URL zu analysieren. Dies macht es zu einem sehr langen Prozess für größere Websites, daher die Empfehlung, die optionalen Bibliotheken zur Beschleunigung zu verwenden.
Verwendung des Link-Status-Analysators
Pylinkvalidator verfügt über eine Vielzahl von Nutzungsoptionen. Sie können zum Beispiel:
- Fortschritt anzeigen
- Crawle die Website und Seiten, die zu einem anderen Host gehören
- Crawle nur eine einzelne Seite und die Seiten, auf die sie verlinkt
- Crawle nur Links, ignoriere andere (Bilder, Stylesheets usw.)
- Crawle eine Website mit mehr Threads oder Prozessen als Standard
- Ändere deinen User Agent
- Crawle mehrere Websites
- Überprüfe robots.txt
- Crawle Body-Tags und Paragraph-Tags
Die Anzeige des Fortschritts über -P oder --progress wird empfohlen, da Sie sich ohne diese fragen würden, wann Ihr Crawl abgeschlossen sein wird, ohne visuelle Anzeichen. Der Befehl zum Crawlen mit mehr Threads (-- workers='Anzahl der Worker') und Prozessen (-- mode=process --workers='Anzahl der Worker') kann ebenfalls sehr nützlich sein.
Natürlich hat das Skript viele weitere Optionen zu erkunden. Die folgenden Beispiele zeigen einige der möglichen Verwendungen:
pylinkvalidate.py -p http://www.example.com/
Die obige Funktion crawlt die Website und zeigt den Fortschritt an.
pylinkvalidate.py -p workers=4 http://www.example.com/
Diese Funktion crawlt eine Website mit mehreren Threads und zeigt den Fortschritt an.
pylinkvalidate.py -p --parser=lxml http://www.example.com/
Diese Funktion verwendet die lxml-Bibliothek, um den Crawl zu beschleunigen und gleichzeitig den Fortschritt anzuzeigen.
pylinkvalidate.py -P --types=a http://www.example.com/
Die obige Funktion crawlt nur Links (<a href>) auf Ihrer Website und ignoriert Bilder, Skripte, Stylesheets und andere Nicht-Link-Attribute auf Ihrer Website. Dies ist auch eine nützliche Funktion beim Crawlen von URLs großer Websites. Nachdem das Skript durchgelaufen ist, erhalten Sie eine Liste von URLs mit Statuscodes 4xx und 5xx, die beim Crawlen Ihrer Website gefunden wurden. Zusammen damit erhalten Sie eine Liste von URLs, die zu dieser Seite verlinken, sodass Sie leichter defekte Links beheben können. Der normale Crawl zeigt keine 3xx-Statuscodes an. Für detailliertere Informationen darüber, von wo aus Ihre Seiten erreichbar sind, versuchen Sie die folgende Funktion:
pylinkvalidate.py --report-type=all http://www.example.com/
Dies liefert Informationen über den Statuscode einer Seite und alle anderen Seiten, die auf eine Seite verlinken.
Ein unglaublich nützliches SEO-Tool, mit dem Sie Ihre Website auf defekte Links (404) und Serverfehler überprüfen können. Beide Fehler können sich negativ auf Ihre SEO-Bemühungen auswirken. Stellen Sie daher sicher, dass Sie Ihre eigene Website regelmäßig crawlen, um diese Fehler so schnell wie möglich zu beheben.
Schlussfolgerung
Obwohl diese Skripte unglaublich nützlich sind, gibt es viele verschiedene Einsatzmöglichkeiten für Python in der Welt des SEO. Fordern Sie sich selbst heraus, Skripte zu erstellen, die Ihre SEO-Bemühungen effizienter gestalten. Es gibt viele Python-Skripte, die Ihr Leben einfacher machen können. Es gibt Skripte zur Überprüfung Ihrer hreflang-Tags, Canonical-Tags, robots.txt und vieles mehr. Denn wer macht heutzutage noch Dinge manuell, wenn sie automatisiert werden können?
