Aktuelle Wetterstationsdaten des DWD als Shapefile mithilfe eines Python-Skripts automatisiert

160328-0003
Python DWD Wetterstationsdaten

Während meines letzten Praktikums hatte ich die Aufgabe einen automatisierten Workflow für die Bereitstellung von tagesaktuellen Wetterstationsdaten des Deutschen Wetterdienstes (DWD) in Form eines Esri-Shapefiles zu implementieren.

Folgende Ausgangssituation:

Der Deutsche Wetterdienst stellt täglich die Messdaten seiner 512 Wetterstationen in Form einer ZIP-Datei für jede einzelne Station auf einem öffentlichen FTP-Server bereit. Jede ZIP-Datei enthält Meta- und Messdaten. Zuvor musste zur Ermittlung des Messwertes einer Station erst die entsprechende Datei vom Server geladen, entzippt und mit einem Texteditor betrachtet werden. Dies ist natürlich sehr umständlich und besonders ärgerlich, wenn die entsprechende Station am gegebenen Tag keinen Wert gemessen hat.

Nun war es also meine Aufgabe eine Lösung zu finden, wie man die Daten in ein GIS übertragen könnte. Also schrieb ich ein Python-Skript.

  1. Zuerst werden mithilfe des pyshp-Moduls zwei Esri-Shapefiles mit entsprechenden
    dwd_stationsdaten_2016-03-26
    Mit Mapnik erstellte Karte

    Attributen erzeugt, einmal in WGS84 und in UTM32

  2. Das Skript loggt sich auf dem FTP-Server ein und lädt die tagesaktuellen Daten runter
  3. Mithilfe einer Schleife werden die Inhalte extrahiert und die Werte in die beiden Shapefiles geschrieben. Eine Transformation in UTM32-Koordinaten geschieht durch das Modul pyproj.
  4. Es wird ein Verzeichnis für den heutigen Tag erstellt, in welches die Shapefiles gespeichert werden.
  5. Zudem wird eine HTML-Datei mit einer Tabelle der aktuellen Messwerte erstellt, sowie eine JPG-Karte mithilfe von Mapnik.

Die Messwerte können nun entweder in einem GIS (in diesem Falle QGIS) oder mit einem Web-Browser betrachtet werden.