Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Registered users can access https://cds.climate.copernicus.eu/api-how-to and locate the fieeld field named "Install the CDS API key" .

The two lines specifying url and key must be copied ina in a specific file: $HOME/.cdsapirc

...

For users using non ECMWF's computers (windows and othere other notebooks) this step is not necessary.

In order to use the web api we need that in the environment running it the proxy settings are deactivated (this is because the CDS is within the premesispremises)

To achieve this goal, in the console with the cdsapi environment type:

...

The 2 examples presented in https://cds.climate.copernicus.eu/api-how-to  are a good and simple examples working under unix like systems

...

In case the user is using python under windows, the script need needs to be changed.

The change involve onlu involves only the code line c = cdsapi.Client()

...

Background Color
color#ddeedd
c = cdsapi.Client(api_key=[your key as specified in the api-how-to], end_point=''https://cds.climate.copernicus.eu/api/v2")


More hands-on example:

Code Block
languagepy
#!/usr/bin/env python
import cdsapi
from datetime import datetime, timedelta

p_levels = [str(z)  for z in ([1] + list(range(50, 1050, 50)))]
c = cdsapi.Client()


def days_of_month(y, m):
    d0 = datetime(y, m, 1)
    d1 = datetime(y, m + 1, 1)
    out = list()
    while d0 < d1:
        out.append(d0.strftime('%Y-%m-%d'))
        d0 += timedelta(days=1)
    return out

for y in range(2008, 2018):
    for m in range(1,13):
        for d in days_of_month(y, m):
            c.retrieve("reanalysis-era5-pressure-levels",
                       {
                           "variable": "temperature",
                           "pressure_level": p_levels,
                           "product_type": "reanalysis",
                           "date": d,
                           "time":[
                               '00:00','01:00','02:00',
                               '03:00','04:00','05:00',
                               '06:00','07:00','08:00',
                               '09:00','10:00','11:00',
                               '12:00','13:00','14:00',
                               '15:00','16:00','17:00',
                               '18:00','19:00','20:00',
                               '21:00','22:00','23:00'
                           ],
                           "format": "netcdf"
                       },
                       "ea_t_{day}.nc".format(day=d)
                       )

...