You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 24 Next »

Background


Access via web-api


The ROM SAF data is downloaded from the ECMWF public datasets service using web-api, which is a "programmatic approach" for data download using python scripts . We will not reproduce the existing documentation here, but we will note some key steps required to download the data. Firstly, you will need to download the appropriate python modules to run the download python scripts. For example, the python scripts will contain from ecmwfapi import commands, like in this simple example, retrieving a monthly mean zonal wind at 1000 hPa, in netcdf format (More complex retrieval scripts are provided here):


#!/usr/bin/env python
#

from ecmwfapi import ECMWFDataServer

# To run this example, you need an API key
# available from https://api.ecmwf.int/v1/key/

server = ECMWFDataServer(verbose=1)

server.retrieve({
'dataset' : "rom_saf_3198",
'stream' : "moda",
'levtype' : "pl",
'levelist': "1000",
'date' : "20150301",
'type' : "an",
'param' : "131.128",
'grid' : "0.5/0.5",
'format' : "netcdf",
'target' : "rom_saf_3198.nc"
})

General information related to downloading the data via web-api, is described here:

https://confluence.ecmwf.int/display/WEBAPI/Web-API+Downloads

Specifically, follow the steps here to install the latest code version:

https://pypi.org/project/ecmwf-api-client/

Briefly, install this with the pip command:

pip install ecmwf-api-client

You will now have the modules needed in the python scripts. (I actually needed this command for the ECMWF system pip install --user ecmwf-api-client because of local permssions).

Login and retrieve your "key":

Login at:

https://apps.ecmwf.int/auth/login/

Retrieve your key at:

https://api.ecmwf.int/v1/key/

Create and paste the "key" information in here:

$HOME/.ecmwfapirc

You will also need to accept the terms before you can access the data with web-api otherwise you will get an error when you run the script.




  • No labels