cds-downloader

Python
CLI
climate
ERA5-Land
A command-line tool for reproducible daily and hourly downloads of ERA5-Land climate data from the Copernicus Climate Data Store.
Author

Réginal Exavier

Published

19 de May de 2026

Modified

1 de August de 2026

cds-downloader is a small Python command-line tool for downloading a focused set of ERA5-Land climate variables from the Copernicus Climate Data Store (CDS) API. It is designed as a practical CLI rather than a general-purpose Python SDK.

The tool provides two workflows:

Installation

cds-downloader requires Python 3.12 or newer. Install the stable version as an isolated command with uv:

uv tool install git+https://github.com/reginalexavier/[email protected]

For one-off use without permanent installation:

uvx --from git+https://github.com/reginalexavier/[email protected] \
  cds-downloader daily --year 2025 --months 10

Authentication

Before requesting data, configure your personal CDS API credentials in ~/.cdsapirc and accept the terms of use for each dataset in the CDS portal. Credentials and downloaded data are never managed by this blog.

Usage

Download daily products using the default variable-specific statistics:

cds-downloader daily --year 2025 --months 10 11 12

Download hourly series:

cds-downloader hourly --year 2025 --months 10 11 12

Validate either workflow without submitting a request to the CDS API:

cds-downloader daily --year 2025 --months 10 --dry-run

The CLI also supports spatial subsets, custom output directories, selected variables, download formats, and a conservative number of parallel workers.

Relationship to wcswatin

cds-downloader is independent from the wcswatin R package. It can prepare NetCDF inputs for workflows later handled by wcswatin, but neither tool requires the other: cds-downloader remains useful for any compatible ERA5-Land workflow.

License and data terms

The software is distributed under the MIT License. Data obtained from the CDS remain subject to the terms and licenses of their respective datasets.