Skip to main content

dailymeteo

Python client for meteorological data from DailyMeteo:

  • get_meteo: daily, monthly or annual values and long-term means for a location, World, 1961 to the present, from the DailyMeteo API. Monthly, annual and long-term mean values are free; daily data need an API key and are billed per returned day.
  • meteoeurope1km: download of the MeteoEurope1km gridded dataset from Zenodo. It covers Europe at 1 km for 1961–2020: TMAX, TMIN, TMEAN, PRCP and SLP, with aggregates and climate normals.

It is the Python counterpart of get_meteo, get_coordinates and get_meteoeurope1km in the R package meteo. Spatial interpolation (RFSI, STRK) is available only in R.

Installation

pip install dailymeteo

Point data from the DailyMeteo API

import dailymeteo as dm

lat, lon = dm.get_coordinates("Belgrade")
df = dm.get_meteo(lat, lon, var="tmean",     # "tmax", "tmin", "prcp"
                  time_scale="mon",           # "ann"; "day" needs api_key="..." from https://app.dailymeteo.com/
                  start="2020-01", end="2020-12")
# or time=["2020-01", "2020-07"]

# climate normals 1961-1990 and 1991-2020 for July
dm.get_meteo(lat, lon, var="tmax", agg_level="ltm", time_scale="mon", time="07")

The result is a pandas.DataFrame with columns timestamp and value. Locations without data (e.g. sea) give NaN.

Account: credits, point history, area downloads

acc = dm.Account("you@example.com", "password")   # or DAILYMETEO_EMAIL / DAILYMETEO_PASSWORD
acc.credits()                                      # plan, API credits, bulk credits
dm.get_meteo(lat, lon, var="tmax", time_scale="day", start="2020-07-01", end="2020-07-31", account=acc)
acc.bulk_download(lat, lon)                        # every variable, daily, whole record; CSV by email (1 bulk credit)
area = "POLYGON((20.0 44.0,20.3 44.0,20.3 44.3,20.0 44.3,20.0 44.0))"
acc.estimate_area(area, ["tmax", "prcp"], "2020-07-01", "2020-07-31")   # cost in credits
acc.area_download(area, ["tmax", "prcp"], "2020-07-01", "2020-07-31")   # clipped GeoTIFFs by email (max 3,000 km²)

MeteoEurope1km gridded dataset

from dailymeteo import meteoeurope1km as meu

# list archives: one ZIP per year with daily Cloud-Optimized GeoTIFFs
meu.files(var="tmean", product="day", years=[2001, 2002])

# download, verify MD5, unzip; interrupted downloads are resumed
meu.download(var="tmean", product="day", years=[2001, 2002], dest_dir="meteoeurope1km", unzip=True)

# aggregates and climate normals
meu.download(var="prcp", product="ltm_diff", dest_dir="meteoeurope1km")
product Content Archives
day daily data one per year (about 1–3.5 GB)
mon monthly aggregates one per decade
ann annual aggregates, 1961–2020 one
ltm_day daily climate normals one per period (period="1961-1990" / "1991-2020")
ltm_mon_ann monthly and annual climate normals one per period
ltm_diff difference of normals, 1991–2020 minus 1961–1990 one

Aggregates are means for temperatures and sums for precipitation. For SLP only daily data are available.

Rasters are in the Equi7 Europe projection (EPSG:27704) at 1000 m. Values are Int16 in tenths of the unit, so divide by 10 to get °C, mm or hPa. NoData is −9999.

meu.catalog() lists all Zenodo records of the dataset.

Citation

Sekulić, A., & Kilibarda, M. (2026). MeteoEurope1km (1961–2020): daily gridded meteorological dataset for Europe at a 1-km spatial resolution. Zenodo. https://doi.org/10.5281/zenodo.23264155

License

GPL-2.0-or-later, the same as the R package meteo.

Metadata

Release files for dailymeteo 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dailymeteo 0.3.0
File Size Uploaded Provenance
dailymeteo-0.3.0.tar.gz 18.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for dailymeteo 0.3.0
File Interpreter ABI Platform
dailymeteo-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 37.1 kB

Release files / dailymeteo-0.3.0.tar.gz

Download URL dailymeteo-0.3.0.tar.gz
Size 18.7 kB
Tags Source
SHA-256 checksum
How to use checksums
058b755f714a6d675b8a536caca1412a69a8c05f6c3574ad32232b8125725191
BLAKE2b-256 checksum
How to use checksums
216c1707467011baa76c1d667054dab37d129c3d2665e4ff7e87e3fab06952a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / dailymeteo-0.3.0-py3-none-any.whl

Download URL dailymeteo-0.3.0-py3-none-any.whl
Size 18.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f2844afb28d94bee40a735946169164c29a4fa7243df22ea98903754f9cbfd0d
BLAKE2b-256 checksum
How to use checksums
7d824ff21dd77a12f7406ad0e11014cfbb068bdca338819f421bab2ac8f999e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Security for dailymeteo 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page