Installing the client library
Python
You can install the ecmwfapi
python library by running:
sudo pip install https://software.ecmwf.int/wiki/download/attachments/23694554/ecmwf-api-client-python.tgz
If you cannot run the sudo
or pip
commands, just download the ecmwf-api-client-python.tgz, extract its content and copy the module ecmwfapi
to a directory pointed by the environment variable PYTHONPATH
.
Perl
You need to download ecmwf-api-client-perl.tgz, extract its content and to a directory pointed by the environment variable PERL5LIB
. This code relies on the JSON perl module, as well as libwww-perl and Crypt::SSLeay.
Installing your API key
To access ECMWF you will need an API key. For that you first need to login at https://apps.ecmwf.int/auth/login/ and then retrieve you key at https://api.ecmwf.int/v1/key/. For this, you will need to have an account on ECMWF web site. Copy the information in this page and paste it in the file $HOME/.ecmwfapirc.
{ "url" : "https://api.ecmwf.int/v1", "key" : "XXXXXXXXXXXXXXXXXXXXXX", "email" : "john.smith@example.com" }
Sample scripts
Python
Below is a simple Python script making use of the ecmwfapi
library:
#!/usr/bin/env python from ecmwfapi import ECMWFDataServer server = ECMWFDataServer() server.retrieve({ 'dataset' : "tigge", 'step' : "24/to/120/by/24", 'number' : "all", 'levtype' : "sl", 'date' : "20071001/to/20071003", 'time' : "00/12", 'origin' : "all", 'type' : "pf", 'param' : "tp", 'area' : "70/-130/30/-60", 'grid' : "2/2", 'target' : "data.grib" })
Perl
Below is a simple Perl script making use of the ECMWF::DataServer module
:
#!/usr/bin/env perl use ECMWF::DataServer; my $server = ECMWF::DataServer->new(); $server.retrieve({ 'dataset' : "tigge", 'step' : "24/to/120/by/24", 'number' : "all", 'levtype' : "sl", 'date' : "20071001/to/20071003", 'time' : "00/12", 'origin' : "all", 'type' : "pf", 'param' : "tp", 'area' : "70/-130/30/-60", 'grid' : "2/2", 'target' : "data.grib" })
The "dataset
" parameter is one of:
To access these dataset, you need to agree on the the corresponding terms and conditions that can be found under the "Licence" link in the table above. See http://apps.ecmwf.int/datasets/ for the content of the datasets. The other parameters are described at: http://www.ecmwf.int/publications/manuals/mars/guide/index.html
Proxies
This tool is based on the python module urllib2, and therefore use the http_proxy
and https_proxy
environment variables if they are set. You should set these variables in your Unix shell if your organisation runs an outgoing proxy.
The "dataset
" parameter is one of:
To access these dataset, you need to agree on the the corresponding terms and conditions that can be found under the "Licence" link in the table above. See http://apps.ecmwf.int/datasets/ for the content of the datasets. The other parameters are described at: http://www.ecmwf.int/publications/manuals/mars/guide/index.html
Proxies
This tool is based on the python module urllib2, and therefore use the http_proxy
and https_proxy
environment variables if they are set. You should set these variables in your Unix shell if your organisation runs an outgoing proxy.