Skip to main content

Parsers for DWD's open weather data.

Project description

dwdparse

Build Status PyPI Release

Parsers for DWD's open weather data.

The DWD (Deutscher Wetterdienst), as Germany's meteorological service, publishes a myriad of meteorological observations and calculations as part of their Open Data program.

dwdparse is a Python library for parsing the various formats that this data is published in, with no dependencies outside the standard library. It serves as the parsing backend for Bright Sky.

Our development effort focuses mainly on the data that is made available through Bright Sky, although we are very open to requests or contributions regarding other parsing targets. If you are looking for a more complete set of parsers - including for data from other weather agencies - and you don't mind the extra dependencies, take a look at the excellent wetterdienst.

Looking for something specific?

I just want to retrieve some weather data

You can use the free public Bright Sky instance!

I want to parse DWD weather files or contribute to dwdparse's source code

Read on. :)

Quickstart

You can use this package both as a stand-alone command-line tool or as a Python library.

Stand-alone DWD file parsing

  1. Install the dwdparse package from PyPI:

    $ pip install dwdparse
    
  2. Call dwdparse, providing your target file (or URL) as argument:

    $ dwdparse stundenwerte_TU_01766_akt.zip
    

This will output a newline-separated list of JSON records. Note that all numerical weather data is converted to SI units. If you wish to use DWD units, or if you need both DWD and WMO station IDs, check out the --units option and the example section with dwdparse --help.

Parsing DWD files from Python code

  1. Install the dwdparse package from PyPI:

    $ pip install dwdparse
    
  2. In Python, import one of the dwdparse parsers (or the get_parser utility function) from dwdparse, then call it's parse() method with the path of the file you would like to parse. This will return an iterable over weather records:

    from brightsky import get_parser
    
    
    DWD_FILE_PATH = 'stundenwerte_TU_01766_akt.zip'
    
    parser_class = get_parser(DWD_FILE_PATH)
    parser = parser_class()
    
    for record in parser.parse(DWD_FILE_PATH):
        print(record)
    

Acknowledgements

dwdparse is developed as the main parsing core for Bright Sky. Bright Sky's development is boosted by the priceless guidance and support of the Open Knowledge Foundation's Prototype Fund program, and is generously funded by Germany's Federal Ministry of Education and Research. Obvious as it may be, it should be mentioned that none of this would be possible without the painstaking, never-ending effort of the Deutscher Wetterdienst.

Prototype Fund     Open Knowledge Foundation Germany     Bundesministerium für Bildung und Forschung     Deutscher Wetterdienst

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dwdparse-0.9.8.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

dwdparse-0.9.8-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file dwdparse-0.9.8.tar.gz.

File metadata

  • Download URL: dwdparse-0.9.8.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for dwdparse-0.9.8.tar.gz
Algorithm Hash digest
SHA256 af1f127f85709a7feb940ab5acd7c126d4c058dd0891d96bdafb3ec442946916
MD5 b82a6fe94e6800f5869aab340a85a6c9
BLAKE2b-256 00fd3640a9de342bb73348d99b4be16c994fcee6948504c6ed5abc9c571d8b0c

See more details on using hashes here.

Provenance

File details

Details for the file dwdparse-0.9.8-py3-none-any.whl.

File metadata

  • Download URL: dwdparse-0.9.8-py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for dwdparse-0.9.8-py3-none-any.whl
Algorithm Hash digest
SHA256 97dbffeceba6ddc6081d13dfb21e2bc1ca9d29d8890778f00a891919f097e942
MD5 4ed9eeb547e1365173da96fce1dce4a3
BLAKE2b-256 79feb9a6066c1874ac1513e12a3910adbdee7c97d5fc1705ab2fc9ef41e6b96b

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page