SEO Beratung - Tim Berlin
  • SEO Beratung
  • Web Analytics
  • Referenzen
  • Über mich
  • SEO Blog & Tipps
  • Kontakt
  • Menü Menü

hreflang XML-Sitemaps mit Python selbst generieren

Eine automatisierte hreflang-Integration im html-head gilt als Standard unter den möglichen Implementierungsformen und bietet auch für SEO Verantwortliche die allerbesten Auswertungs- und Kontrollmöglichkeiten. Dennoch gibt es häufig Situationen in denen eine manuelle Erstellung die effizienteste und schnellste (Überbrückungs-)Lösung sein kann. Insbesondere dann, wenn wenig IT-Ressourcen zur Verfügung stehen. Nachfolgend möchte ich zeigen, wie man sich hreflang-Sitemaps mit Python einfach selbst erstellen kann.

hreflang Sitemap

Inhaltsverzeichnis

  • hreflang XML-Sitemaps mit Python selbst generieren
    • Python Script zur Generierung der hreflang XML-Sitemap
    • Wesentliche Funktionalitäten des Skripts
    • Struktur der CSV Datei und URL-Mapping
    • XML-Output
    • Materialien & Verweise

Python Script zur Generierung der hreflang XML-Sitemap

Wesentliche Funktionalitäten des Skripts

Das Herzstück des Skripts ist die Funktion generate_sitemap_from_csv.

Diese Funktion durchläuft im wesentlichen folgende Schritte:

  1. Sie öffnet und liest die angegebene CSV-Datei.
  2. Sie erstellt für jede URL in der CSV ein url-Element in der XML-Sitemap.
  3. Sie fügt zu jedem url-Element xhtml:link-Elemente hinzu, welche die hreflang-Zuordnungen für die jeweilige URL repräsentieren. Extrahiert wird der jeweilige Sprach- bzw. Ländercode aus der Überschrift der jeweiligen Spalte.
  4. Wenn die Gesamtzahl der URLs einen bestimmten Schwellenwert überschreiten, teilt das Skript die Sitemap in mehrere kleinere Sitemaps auf und nummeriert diese durch. Der Schwellwert kann beliebig angepasst werden. Als Höchstwert gibt Google 50.000 URL-Einträge an. Standard im Skript sind 20.000.
  5. Die Sitemaps werden korrekt formatiert und mit der entsprechenden XML-Deklaration xml version="1.0" encoding="UTF-8" und dem XML-Namespace-Attribut xmlns:xhtml="http://www.w3.org/1999/xhtml versehen.
  6. Abschließend wird jede generierte Sitemap als separate XML-Datei im output-Ordner gespeichert.

Struktur der CSV Datei und URL-Mapping

Zur Erstellung der CSV Datei ist ein wenig manuelle Vorarbeit nötig: dafür werden sämtliche Länderäquivalente aus einem Crawl auf Zeilenbasis gemappt. Die jeweilige Spaltenüberschrift gibt den entsprechenden Länder- und/oder Sprachcode an, welcher direkt für die Angabe im hreflang-Attribut verwendet wird. Sollte es für spezifische Länder keine URL geben, wird das Feld einfach leer gelassen. Generiert wird der hreflang-Verbund nur, wenn mindestens zwei URLs für einen bidirektionalen Verweis vorhanden sind. Eine einzelne URL wird übersprungen.

XML-Output

Materialien & Verweise

  • Github-Repo mit Beispiel-Skript

Autor: Tim Berlin

Seit 2005 bin ich in unterschiedlichen Zweigen des Online-Marketings und der Suchmaschinenoptimierung tätig. Durch innovative Strategien und maßgeschneiderte Lösungen unterstütze ich national und international aufgestellte Unternehmen als SEO Berater ihr organisches Wachstum und die digitale Sichtbarkeit zu steigern, um mehr Traffic und Sales zu generieren. Zudem arbeite ich als Head of SEO für die kfzteile24 GmbH. Mein Wissen gebe ich gerne in Fachbeiträgen und Workshops weiter.

Mehr über Tim Berlin

Suche

Neueste Beiträge

  • hreflang XML-Sitemaps mit Python selbst generieren
  • Linkmaskierung mit Base64 und Javascript
Copyright © Tim Berlin
  • Twitter
  • LinkedIn
  • Xing
  • Github
  • Cookie-Richtlinie
  • Datenschutz
  • Impressum
Nach oben scrollen
Cookie-Zustimmung verwalten
Um die Nutzerfreundlichkeit der Website so einfach wie möglich zu gestalten, verwenden wir nur die nötigsten Cookies. Zur Cookie-Richtlinie | Datenschutzerklärung
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen
{title} {title} {title}