wetterdienst


Namewetterdienst JSON
Version 0.110.0 PyPI version JSON
download
home_pageNone
SummaryOpen weather data for humans
upload_time2025-07-23 20:47:45
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
license# MIT License Copyright (c) 2018 - 2024 earthobservations Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords deutscher-wetterdienst dmo eaufrance-hubeau environment-and-climate-change-canada environmental-agency-uk federal-waterways-and-shipping-administration-germany forecast geosphere-austria ghcn historical institute-of-meteorology-and-water-management-poland mosmix national-oceanic-and-atmospheric-administration national-weather-service near-real-time observation open-data open-source radar radolan recent time-series weather-api weather-data weather-station
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Wetterdienst - Open weather data for humans

<p>
  <img src="https://raw.githubusercontent.com/earthobservations/wetterdienst/main/docs/assets/german_weather_stations.png" alt="German weather stations managed by Deutscher Wetterdienst" width="32%"/>
  <img src="https://raw.githubusercontent.com/earthobservations/wetterdienst/main/docs/assets/temperature_ts.png" alt="temperature timeseries of Hohenpeissenberg/Germany" width="32%"/>
  <img src="https://raw.githubusercontent.com/earthobservations/wetterdienst/main/docs/assets/hohenpeissenberg_warming_stripes.png" alt="warming stripes of Hohenpeissenberg/Germany" width="32%"/>
</p>


> "What do we want? Climate Justice! When do we want it? Now!" - FFF

> [!WARNING]
> This library is a work in progress!
> Breaking changes should be expected until a 1.0 release, so version pinning is recommended.

### Badges

#### CI

[![CI status](https://github.com/earthobservations/wetterdienst/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/earthobservations/wetterdienst/actions?workflow=Tests)
[![Documentation status](https://readthedocs.org/projects/wetterdienst/badge/?version=latest)](https://wetterdienst.readthedocs.io/en/latest/?badge=latest)
[![Code coverage](https://codecov.io/gh/earthobservations/wetterdienst/branch/main/graph/badge.svg)](https://codecov.io/gh/earthobservations/wetterdienst)

#### Meta

[![PyPI version](https://img.shields.io/pypi/v/wetterdienst.svg)](https://pypi.org/project/wetterdienst/)
[![Conda version](https://img.shields.io/conda/vn/conda-forge/wetterdienst.svg)](https://anaconda.org/conda-forge/wetterdienst)
[![Project license](https://img.shields.io/github/license/earthobservations/wetterdienst)](https://github.com/earthobservations/wetterdienst/blob/main/LICENSE)
[![Project status (alpha, beta, stable)](https://img.shields.io/pypi/status/wetterdienst.svg)](https://pypi.python.org/pypi/wetterdienst/)
[![Python version compatibility](https://img.shields.io/pypi/pyversions/wetterdienst.svg)](https://pypi.python.org/pypi/wetterdienst/)

#### Downloads

[![PyPI downloads](https://static.pepy.tech/personalized-badge/wetterdienst?period=month&units=international_system&left_color=grey&right_color=blue&left_text=PyPI%20downloads/month)](https://pepy.tech/project/wetterdienst)
[![Conda downloads](https://img.shields.io/conda/dn/conda-forge/wetterdienst.svg?label=Conda%20downloads)](https://anaconda.org/conda-forge/wetterdienst)

#### Citation

[![Citation reference](https://zenodo.org/badge/160953150.svg)](https://zenodo.org/badge/latestdoi/160953150)

## Overview

Welcome to Wetterdienst, your friendly weather service library for Python.

We are a group of like-minded people trying to make access to weather data in Python feel like a warm summer breeze,
similar to other projects like [rdwd](https://github.com/brry/rdwd) for the R language, which originally drew our
interest in this project. Our long-term goal is to provide access to multiple weather services as well as other related
agencies such as river measurements. With ``wetterdienst`` we try to use modern Python technologies all over the place.
The library is based on [polars](https://www.pola.rs/) (we <3 [pandas](https://pandas.pydata.org/), it is still part of
some IO processes) across the board, uses [uv](https://github.com/astral-sh/uv) for package administration and GitHub
Actions for all things CI. Our users are an important part of the development as we are not currently using the data we
are providing and only implement what we think would be the best. Therefore, contributions and feedback whether it be
data related or library related are very welcome! Just hand in a PR or Issue if you think we should include a new
feature or data source.

## Data

For an overview of the data we have currently made available and under which license it is published take a look at the
[data](https://wetterdienst.readthedocs.io/en/latest/data/index.html) section. Detailed information on datasets and
parameters is given at the [coverage](https://wetterdienst.readthedocs.io/en/improve-documentation/data/coverage.html)
subsection. Licenses and usage requirements may differ for each provider so check this out before including the data in
your project to be sure that you fulfill copyright requirements!

For a closer look on the DWD data, you can use the [interactive map](https://bookdown.org/brry/rdwd/interactive-map.html)
or the [table](https://bookdown.org/brry/rdwd/available-datasets.html) provided by the `rdwd` package.

## Features

- APIs for stations and values
- Get stations nearby a selected location
- Define your request by arguments such as `parameters`, `periods`, `start date`, `end date`
- Define general settings in Settings context
- Command line interfaced
- Web-API via FastAPI, hosted on [wetterdienst.eobs.org](https://wetterdienst.eobs.org/)
- Rich UI features like [explorer](https://wetterdienst.streamlit.app/), [stripes](https://stripes.streamlit.app/)
- Run SQL queries on the results
- Export results to databases and other data sinks
- Public Docker image
- Interpolation and Summary of station values

## Setup

### Native

Via PyPi (standard):

```bash
pip install wetterdienst
```

Via Github (most recent):

```bash
pip install git+https://github.com/earthobservations/wetterdienst
```

There are some extras available for ``wetterdienst``. Use them like:

```bash
pip install wetterdienst[sql]
```

- cratedb: Install support for CrateDB.
- duckdb: Install support for DuckDB.
- export: Install openpyxl for Excel export and pyarrow for writing files in Feather- and Parquet-format.
- influxdb: Install support for InfluxDB.
- interpolation: Install support for station interpolation.
- mysql: Install support for MySQL.
- matplotlib: Install support for plotting (matplotlib), only used in radar examples.
- plotting: Install support for plotting (plotly).
- postgresql: Install support for PostgreSQL.
- sql: Install DuckDB for querying data using SQL.

To check the installation, invoke:

```bash
wetterdienst --help
```

### Docker

Docker images for each stable release will get pushed to GitHub Container Registry.

``wetterdienst`` serves a full environment, including *all* the optional dependencies of Wetterdienst.

Pull the Docker image:

```bash
docker pull ghcr.io/earthobservations/wetterdienst
```

#### Library

Use the latest stable version of ``wetterdienst``:

```bash
$ docker run -ti ghcr.io/earthobservations/wetterdienst
Python 3.8.5 (default, Sep 10 2020, 16:58:22)
[GCC 8.3.0] on linux
```

```python
import wetterdienst
wetterdienst.__version__
```

#### Command line script

The ``wetterdienst`` command is also available:

```bash
# Make an alias to use it conveniently from your shell.
alias wetterdienst='docker run -ti ghcr.io/earthobservations/wetterdienst wetterdienst'

wetterdienst --help
wetterdienst --version
wetterdienst info
```

### Raspberry Pi / LINUX ARM

Running wetterdienst on Raspberry Pi, you need to install **numpy**
and **lxml** prior to installing wetterdienst by running the following
lines:

```bash
# not all installations may be required to get lxml running
sudo apt-get install gfortran
sudo apt-get install libopenblas-base
sudo apt-get install libopenblas-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install python3-lxml
```

Additionally expanding the Swap to 2048 mb may be required and can be done via swap-file:

```bash
sudo nano /etc/dphys-swapfile
```

Thanks [chr-sto](https://github.com/chr-sto) for reporting back to us!

## Example

### Task

Get historical climate summary for two German stations between 1990 and 2020

### Library

```python
from wetterdienst import Settings
from wetterdienst.provider.dwd.observation import DwdObservationRequest

settings = Settings(  # default
  ts_shape="long",  # tidy data
  ts_humanize=True,  # humanized parameters
  ts_convert_units=True  # convert values to SI units
)

request = DwdObservationRequest(
  parameters=[
    ("daily", "climate_summary", "precipitation_height"),
  ],
  start_date="2002-08-11",  # if not given timezone defaulted to UTC
  end_date="2002-08-13",  # if not given timezone defaulted to UTC
  settings=settings
).filter_by_station_id(station_id=(5779,))

stations = request.df
stations.head()
# ┌────────────┬─────────────────┬────────────┬─────────────────────────┬───┬───────────┬────────┬──────────────────────┬─────────┐
# │ resolution ┆ dataset         ┆ station_id ┆ start_date              ┆ … ┆ longitude ┆ height ┆ name                 ┆ state   │
# │ ---        ┆ ---             ┆ ---        ┆ ---                     ┆   ┆ ---       ┆ ---    ┆ ---                  ┆ ---     │
# │ str        ┆ str             ┆ str        ┆ datetime[μs, UTC]       ┆   ┆ f64       ┆ f64    ┆ str                  ┆ str     │
# ╞════════════╪═════════════════╪════════════╪═════════════════════════╪═══╪═══════════╪════════╪══════════════════════╪═════════╡
# │ daily      ┆ climate_summary ┆ 05779      ┆ 1971-01-01 00:00:00 UTC ┆ … ┆ 13.7516   ┆ 877.0  ┆ Zinnwald-Georgenfeld ┆ Sachsen │
# └────────────┴─────────────────┴────────────┴─────────────────────────┴───┴───────────┴────────┴──────────────────────┴─────────┘

values = request.values.all().df
values.head()
# ┌────────────┬────────────┬─────────────────┬──────────────────────┬─────────────────────────┬───────┬─────────┐
# │ station_id ┆ resolution ┆ dataset         ┆ parameter            ┆ date                    ┆ value ┆ quality │
# │ ---        ┆ ---        ┆ ---             ┆ ---                  ┆ ---                     ┆ ---   ┆ ---     │
# │ str        ┆ str        ┆ str             ┆ str                  ┆ datetime[μs, UTC]       ┆ f64   ┆ f64     │
# ╞════════════╪════════════╪═════════════════╪══════════════════════╪═════════════════════════╪═══════╪═════════╡
# │ 05779      ┆ daily      ┆ climate_summary ┆ precipitation_height ┆ 2002-08-11 00:00:00 UTC ┆ 67.9  ┆ 10.0    │
# │ 05779      ┆ daily      ┆ climate_summary ┆ precipitation_height ┆ 2002-08-12 00:00:00 UTC ┆ 312.0 ┆ 10.0    │
# │ 05779      ┆ daily      ┆ climate_summary ┆ precipitation_height ┆ 2002-08-13 00:00:00 UTC ┆ 26.3  ┆ 10.0    │
# └────────────┴────────────┴─────────────────┴──────────────────────┴─────────────────────────┴───────┴─────────┘

# to get a pandas DataFrame and e.g. create some matplotlib plots    
values.to_pandas()
```

### Client

```bash
# Get list of all stations for daily climate summary data in JSON format
wetterdienst stations --provider=dwd --network=observation --parameters=daily/kl --all

# Get daily climate summary data for specific stations
wetterdienst values --provider=dwd --network=observation --parameters=daily/kl --station=1048,4411
```

### Other

Checkout [examples](https://github.com/earthobservations/wetterdienst/tree/main/examples) for more examples.

## Acknowledgements

We want to acknowledge all environmental agencies which provide their data open and free of charge first and foremost
for the sake of endless research possibilities.

We want to acknowledge all contributors for being part of the improvements to this library that make it better and
better every day.

## Important Links

- Restapi: https://wetterdienst.eobs.org/
- Explorer: https://wetterdienst.streamlit.app/
- Stripes: https://stripes.streamlit.app/
- Documentation: https://wetterdienst.readthedocs.io/

    - Usage: https://wetterdienst.readthedocs.io/en/latest/usage/
    - Contribution: https://wetterdienst.readthedocs.io/en/latest/contribution/
    - Changelog: https://wetterdienst.readthedocs.io/en/latest/changelog.html

- Examples (runnable scripts): https://github.com/earthobservations/wetterdienst/tree/main/examples
- Benchmarks: https://github.com/earthobservations/wetterdienst/tree/main/benchmarks

## Supported by

[![JetBrains logo.](https://resources.jetbrains.com/storage/products/company/brand/logos/jetbrains.svg)](https://jb.gg/OpenSourceSupport)

Special thanks to the kind people at [JetBrains] s.r.o. for supporting us with
excellent development tooling.

[JetBrains]: https://www.jetbrains.com/

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "wetterdienst",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "deutscher-wetterdienst, dmo, eaufrance-hubeau, environment-and-climate-change-canada, environmental-agency-uk, federal-waterways-and-shipping-administration-germany, forecast, geosphere-austria, ghcn, historical, institute-of-meteorology-and-water-management-poland, mosmix, national-oceanic-and-atmospheric-administration, national-weather-service, near-real-time, observation, open-data, open-source, radar, radolan, recent, time-series, weather-api, weather-data, weather-station",
    "author": null,
    "author_email": "Benjamin Gutzmann <gutzemann@gmail.com>, Andreas Motl <andreas.motl@panodata.org>",
    "download_url": "https://files.pythonhosted.org/packages/bc/43/c7db5aeddb72d8ea6110ba4894249e3e856df74dafaaf4572aa07de1e1ce/wetterdienst-0.110.0.tar.gz",
    "platform": null,
    "description": "# Wetterdienst - Open weather data for humans\n\n<p>\n  <img src=\"https://raw.githubusercontent.com/earthobservations/wetterdienst/main/docs/assets/german_weather_stations.png\" alt=\"German weather stations managed by Deutscher Wetterdienst\" width=\"32%\"/>\n  <img src=\"https://raw.githubusercontent.com/earthobservations/wetterdienst/main/docs/assets/temperature_ts.png\" alt=\"temperature timeseries of Hohenpeissenberg/Germany\" width=\"32%\"/>\n  <img src=\"https://raw.githubusercontent.com/earthobservations/wetterdienst/main/docs/assets/hohenpeissenberg_warming_stripes.png\" alt=\"warming stripes of Hohenpeissenberg/Germany\" width=\"32%\"/>\n</p>\n\n\n> \"What do we want? Climate Justice! When do we want it? Now!\" - FFF\n\n> [!WARNING]\n> This library is a work in progress!\n> Breaking changes should be expected until a 1.0 release, so version pinning is recommended.\n\n### Badges\n\n#### CI\n\n[![CI status](https://github.com/earthobservations/wetterdienst/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/earthobservations/wetterdienst/actions?workflow=Tests)\n[![Documentation status](https://readthedocs.org/projects/wetterdienst/badge/?version=latest)](https://wetterdienst.readthedocs.io/en/latest/?badge=latest)\n[![Code coverage](https://codecov.io/gh/earthobservations/wetterdienst/branch/main/graph/badge.svg)](https://codecov.io/gh/earthobservations/wetterdienst)\n\n#### Meta\n\n[![PyPI version](https://img.shields.io/pypi/v/wetterdienst.svg)](https://pypi.org/project/wetterdienst/)\n[![Conda version](https://img.shields.io/conda/vn/conda-forge/wetterdienst.svg)](https://anaconda.org/conda-forge/wetterdienst)\n[![Project license](https://img.shields.io/github/license/earthobservations/wetterdienst)](https://github.com/earthobservations/wetterdienst/blob/main/LICENSE)\n[![Project status (alpha, beta, stable)](https://img.shields.io/pypi/status/wetterdienst.svg)](https://pypi.python.org/pypi/wetterdienst/)\n[![Python version compatibility](https://img.shields.io/pypi/pyversions/wetterdienst.svg)](https://pypi.python.org/pypi/wetterdienst/)\n\n#### Downloads\n\n[![PyPI downloads](https://static.pepy.tech/personalized-badge/wetterdienst?period=month&units=international_system&left_color=grey&right_color=blue&left_text=PyPI%20downloads/month)](https://pepy.tech/project/wetterdienst)\n[![Conda downloads](https://img.shields.io/conda/dn/conda-forge/wetterdienst.svg?label=Conda%20downloads)](https://anaconda.org/conda-forge/wetterdienst)\n\n#### Citation\n\n[![Citation reference](https://zenodo.org/badge/160953150.svg)](https://zenodo.org/badge/latestdoi/160953150)\n\n## Overview\n\nWelcome to Wetterdienst, your friendly weather service library for Python.\n\nWe are a group of like-minded people trying to make access to weather data in Python feel like a warm summer breeze,\nsimilar to other projects like [rdwd](https://github.com/brry/rdwd) for the R language, which originally drew our\ninterest in this project. Our long-term goal is to provide access to multiple weather services as well as other related\nagencies such as river measurements. With ``wetterdienst`` we try to use modern Python technologies all over the place.\nThe library is based on [polars](https://www.pola.rs/) (we <3 [pandas](https://pandas.pydata.org/), it is still part of\nsome IO processes) across the board, uses [uv](https://github.com/astral-sh/uv) for package administration and GitHub\nActions for all things CI. Our users are an important part of the development as we are not currently using the data we\nare providing and only implement what we think would be the best. Therefore, contributions and feedback whether it be\ndata related or library related are very welcome! Just hand in a PR or Issue if you think we should include a new\nfeature or data source.\n\n## Data\n\nFor an overview of the data we have currently made available and under which license it is published take a look at the\n[data](https://wetterdienst.readthedocs.io/en/latest/data/index.html) section. Detailed information on datasets and\nparameters is given at the [coverage](https://wetterdienst.readthedocs.io/en/improve-documentation/data/coverage.html)\nsubsection. Licenses and usage requirements may differ for each provider so check this out before including the data in\nyour project to be sure that you fulfill copyright requirements!\n\nFor a closer look on the DWD data, you can use the [interactive map](https://bookdown.org/brry/rdwd/interactive-map.html)\nor the [table](https://bookdown.org/brry/rdwd/available-datasets.html) provided by the `rdwd` package.\n\n## Features\n\n- APIs for stations and values\n- Get stations nearby a selected location\n- Define your request by arguments such as `parameters`, `periods`, `start date`, `end date`\n- Define general settings in Settings context\n- Command line interfaced\n- Web-API via FastAPI, hosted on [wetterdienst.eobs.org](https://wetterdienst.eobs.org/)\n- Rich UI features like [explorer](https://wetterdienst.streamlit.app/), [stripes](https://stripes.streamlit.app/)\n- Run SQL queries on the results\n- Export results to databases and other data sinks\n- Public Docker image\n- Interpolation and Summary of station values\n\n## Setup\n\n### Native\n\nVia PyPi (standard):\n\n```bash\npip install wetterdienst\n```\n\nVia Github (most recent):\n\n```bash\npip install git+https://github.com/earthobservations/wetterdienst\n```\n\nThere are some extras available for ``wetterdienst``. Use them like:\n\n```bash\npip install wetterdienst[sql]\n```\n\n- cratedb: Install support for CrateDB.\n- duckdb: Install support for DuckDB.\n- export: Install openpyxl for Excel export and pyarrow for writing files in Feather- and Parquet-format.\n- influxdb: Install support for InfluxDB.\n- interpolation: Install support for station interpolation.\n- mysql: Install support for MySQL.\n- matplotlib: Install support for plotting (matplotlib), only used in radar examples.\n- plotting: Install support for plotting (plotly).\n- postgresql: Install support for PostgreSQL.\n- sql: Install DuckDB for querying data using SQL.\n\nTo check the installation, invoke:\n\n```bash\nwetterdienst --help\n```\n\n### Docker\n\nDocker images for each stable release will get pushed to GitHub Container Registry.\n\n``wetterdienst`` serves a full environment, including *all* the optional dependencies of Wetterdienst.\n\nPull the Docker image:\n\n```bash\ndocker pull ghcr.io/earthobservations/wetterdienst\n```\n\n#### Library\n\nUse the latest stable version of ``wetterdienst``:\n\n```bash\n$ docker run -ti ghcr.io/earthobservations/wetterdienst\nPython 3.8.5 (default, Sep 10 2020, 16:58:22)\n[GCC 8.3.0] on linux\n```\n\n```python\nimport wetterdienst\nwetterdienst.__version__\n```\n\n#### Command line script\n\nThe ``wetterdienst`` command is also available:\n\n```bash\n# Make an alias to use it conveniently from your shell.\nalias wetterdienst='docker run -ti ghcr.io/earthobservations/wetterdienst wetterdienst'\n\nwetterdienst --help\nwetterdienst --version\nwetterdienst info\n```\n\n### Raspberry Pi / LINUX ARM\n\nRunning wetterdienst on Raspberry Pi, you need to install **numpy**\nand **lxml** prior to installing wetterdienst by running the following\nlines:\n\n```bash\n# not all installations may be required to get lxml running\nsudo apt-get install gfortran\nsudo apt-get install libopenblas-base\nsudo apt-get install libopenblas-dev\nsudo apt-get install libatlas-base-dev\nsudo apt-get install python3-lxml\n```\n\nAdditionally expanding the Swap to 2048 mb may be required and can be done via swap-file:\n\n```bash\nsudo nano /etc/dphys-swapfile\n```\n\nThanks [chr-sto](https://github.com/chr-sto) for reporting back to us!\n\n## Example\n\n### Task\n\nGet historical climate summary for two German stations between 1990 and 2020\n\n### Library\n\n```python\nfrom wetterdienst import Settings\nfrom wetterdienst.provider.dwd.observation import DwdObservationRequest\n\nsettings = Settings(  # default\n  ts_shape=\"long\",  # tidy data\n  ts_humanize=True,  # humanized parameters\n  ts_convert_units=True  # convert values to SI units\n)\n\nrequest = DwdObservationRequest(\n  parameters=[\n    (\"daily\", \"climate_summary\", \"precipitation_height\"),\n  ],\n  start_date=\"2002-08-11\",  # if not given timezone defaulted to UTC\n  end_date=\"2002-08-13\",  # if not given timezone defaulted to UTC\n  settings=settings\n).filter_by_station_id(station_id=(5779,))\n\nstations = request.df\nstations.head()\n# \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n# \u2502 resolution \u2506 dataset         \u2506 station_id \u2506 start_date              \u2506 \u2026 \u2506 longitude \u2506 height \u2506 name                 \u2506 state   \u2502\n# \u2502 ---        \u2506 ---             \u2506 ---        \u2506 ---                     \u2506   \u2506 ---       \u2506 ---    \u2506 ---                  \u2506 ---     \u2502\n# \u2502 str        \u2506 str             \u2506 str        \u2506 datetime[\u03bcs, UTC]       \u2506   \u2506 f64       \u2506 f64    \u2506 str                  \u2506 str     \u2502\n# \u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n# \u2502 daily      \u2506 climate_summary \u2506 05779      \u2506 1971-01-01 00:00:00 UTC \u2506 \u2026 \u2506 13.7516   \u2506 877.0  \u2506 Zinnwald-Georgenfeld \u2506 Sachsen \u2502\n# \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\nvalues = request.values.all().df\nvalues.head()\n# \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n# \u2502 station_id \u2506 resolution \u2506 dataset         \u2506 parameter            \u2506 date                    \u2506 value \u2506 quality \u2502\n# \u2502 ---        \u2506 ---        \u2506 ---             \u2506 ---                  \u2506 ---                     \u2506 ---   \u2506 ---     \u2502\n# \u2502 str        \u2506 str        \u2506 str             \u2506 str                  \u2506 datetime[\u03bcs, UTC]       \u2506 f64   \u2506 f64     \u2502\n# \u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n# \u2502 05779      \u2506 daily      \u2506 climate_summary \u2506 precipitation_height \u2506 2002-08-11 00:00:00 UTC \u2506 67.9  \u2506 10.0    \u2502\n# \u2502 05779      \u2506 daily      \u2506 climate_summary \u2506 precipitation_height \u2506 2002-08-12 00:00:00 UTC \u2506 312.0 \u2506 10.0    \u2502\n# \u2502 05779      \u2506 daily      \u2506 climate_summary \u2506 precipitation_height \u2506 2002-08-13 00:00:00 UTC \u2506 26.3  \u2506 10.0    \u2502\n# \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\n# to get a pandas DataFrame and e.g. create some matplotlib plots    \nvalues.to_pandas()\n```\n\n### Client\n\n```bash\n# Get list of all stations for daily climate summary data in JSON format\nwetterdienst stations --provider=dwd --network=observation --parameters=daily/kl --all\n\n# Get daily climate summary data for specific stations\nwetterdienst values --provider=dwd --network=observation --parameters=daily/kl --station=1048,4411\n```\n\n### Other\n\nCheckout [examples](https://github.com/earthobservations/wetterdienst/tree/main/examples) for more examples.\n\n## Acknowledgements\n\nWe want to acknowledge all environmental agencies which provide their data open and free of charge first and foremost\nfor the sake of endless research possibilities.\n\nWe want to acknowledge all contributors for being part of the improvements to this library that make it better and\nbetter every day.\n\n## Important Links\n\n- Restapi: https://wetterdienst.eobs.org/\n- Explorer: https://wetterdienst.streamlit.app/\n- Stripes: https://stripes.streamlit.app/\n- Documentation: https://wetterdienst.readthedocs.io/\n\n    - Usage: https://wetterdienst.readthedocs.io/en/latest/usage/\n    - Contribution: https://wetterdienst.readthedocs.io/en/latest/contribution/\n    - Changelog: https://wetterdienst.readthedocs.io/en/latest/changelog.html\n\n- Examples (runnable scripts): https://github.com/earthobservations/wetterdienst/tree/main/examples\n- Benchmarks: https://github.com/earthobservations/wetterdienst/tree/main/benchmarks\n\n## Supported by\n\n[![JetBrains logo.](https://resources.jetbrains.com/storage/products/company/brand/logos/jetbrains.svg)](https://jb.gg/OpenSourceSupport)\n\nSpecial thanks to the kind people at [JetBrains] s.r.o. for supporting us with\nexcellent development tooling.\n\n[JetBrains]: https://www.jetbrains.com/\n",
    "bugtrack_url": null,
    "license": "# MIT License  Copyright (c) 2018 - 2024 earthobservations  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
    "summary": "Open weather data for humans",
    "version": "0.110.0",
    "project_urls": {
        "Explorer": "https://wetterdienst.streamlit.app/",
        "Homepage": "https://wetterdienst.readthedocs.io/",
        "Issues": "https://github.com/earthobservations/wetterdienst/issues",
        "Releases": "https://github.com/earthobservations/wetterdienst/releases",
        "Repository": "https://github.com/earthobservations/wetterdienst",
        "Restapi": "https://wetterdienst.eobs.org/",
        "Stripes": "https://stripes.streamlit.app/"
    },
    "split_keywords": [
        "deutscher-wetterdienst",
        " dmo",
        " eaufrance-hubeau",
        " environment-and-climate-change-canada",
        " environmental-agency-uk",
        " federal-waterways-and-shipping-administration-germany",
        " forecast",
        " geosphere-austria",
        " ghcn",
        " historical",
        " institute-of-meteorology-and-water-management-poland",
        " mosmix",
        " national-oceanic-and-atmospheric-administration",
        " national-weather-service",
        " near-real-time",
        " observation",
        " open-data",
        " open-source",
        " radar",
        " radolan",
        " recent",
        " time-series",
        " weather-api",
        " weather-data",
        " weather-station"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "32715751647c8071f185d926b52b327e442b410dfeb0d107e5c77dc3a1822d22",
                "md5": "b4ba203ae3ebd735007ae659c94864f5",
                "sha256": "1d72cdf7921f88670cba3a9f83f05d402141bee87646789eec91bff851bac106"
            },
            "downloads": -1,
            "filename": "wetterdienst-0.110.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b4ba203ae3ebd735007ae659c94864f5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 214490,
            "upload_time": "2025-07-23T20:47:43",
            "upload_time_iso_8601": "2025-07-23T20:47:43.888893Z",
            "url": "https://files.pythonhosted.org/packages/32/71/5751647c8071f185d926b52b327e442b410dfeb0d107e5c77dc3a1822d22/wetterdienst-0.110.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bc43c7db5aeddb72d8ea6110ba4894249e3e856df74dafaaf4572aa07de1e1ce",
                "md5": "3de4bd0cf2a99691c1771d5885540061",
                "sha256": "1a31c49f24e05db3ac41b06d8c081f04cbb33d82f6296d48cc01b269e1fb36f8"
            },
            "downloads": -1,
            "filename": "wetterdienst-0.110.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3de4bd0cf2a99691c1771d5885540061",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 1035010,
            "upload_time": "2025-07-23T20:47:45",
            "upload_time_iso_8601": "2025-07-23T20:47:45.699626Z",
            "url": "https://files.pythonhosted.org/packages/bc/43/c7db5aeddb72d8ea6110ba4894249e3e856df74dafaaf4572aa07de1e1ce/wetterdienst-0.110.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-23 20:47:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "earthobservations",
    "github_project": "wetterdienst",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "wetterdienst"
}
        
Elapsed time: 1.55654s