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

Compare with Current View Page History

« Previous Version 86 Next »

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.

Content $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:

Python client
#!/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:

Perl client
#!/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"
    })

 Choosing a dataset

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 Perl and Python tools iare will 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.

 

  • No labels