如何用API下载从哥白尼气候数据中心ECWMF下载数据

在此以ERA5的hourly数据[1]为例,ECWMF数据中心的界面用户友好度很高,在你选择相应的变量后会生API代码,复制到python编译器例如jupyter即可下载。以下为详细步骤:

1. 先注册成为用户,然后在网页上登陆,即可等到账户对应的API Key。

如何用API下载从哥白尼气候数据中心ECWMF下载数据_第1张图片

2. 下载python,如果有请忽略这一步。
3. 安装 cdsapi python包。我是在anaconda prompt中安装的,直接在Anaconda Prompt中运行如下代码中的一条。
conda install -c conda-forge cdsapi
conda install -c "conda-forge/label/cf202003" cdsapi
4. 安装完成后打开命令行(Command Prompt)创建 .cdsapirc文件。这一步非常关键,将直接决定你的下载代码是否能运行

打开命令好后,进入’C:\Users\username’这个路径,此处的username为你的用户名,例如我的用户名是‘会飞的狗’。

然后输入type nul > .cdsapirc创建文件。

之后用Notepad++或Visual studio code等编译器打开,在该文件中输入如下内容,UID为你的uid号,api-key为你的密钥。并删除{}这个符号。保存文件。
url: https://cds.climate.copernicus.eu/api/v2
key: {uid}:{api-key}

5. 在Jupyter中运行从ECWMF网站选择变量后点击show API request并复制此处生成的的代码。运行代码,即可下载到相应的文件。

如何用API下载从哥白尼气候数据中心ECWMF下载数据_第2张图片

import cdsapi

c = cdsapi.Client()

c.retrieve(
    'reanalysis-era5-single-levels',
    {
        'product_type': 'reanalysis',
        'format': 'netcdf',
        'variable': [
            '10m_u_component_of_wind', '10m_v_component_of_wind',
        ],
        'year': '2022',
        'area': [
            72, 21.5, 70,
            23.5,
        ],
        'day': [
            '01', '02', '03',
            '04', '05', '06',
            '07', '08', '09',
            '10', '11', '12',
            '13', '14', '15',
            '16', '17', '18',
            '19', '20', '21',
            '22', '23', '24',
            '25', '26', '27',
            '28', '29', '30',
            '31',
        ],
        'month': '01',
        'time': [
            '05:00', '06:00', '15:00',
            '16:00',
        ],
    },
    'download.nc')
参考文档

[1] https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels?tab=form
[2] https://cds.climate.copernicus.eu/api-how-to
[3] https://earthscience.stackexchange.com/questions/16962/error-trying-to-download-era5-data-exception-missing-incomplete-configuration

你可能感兴趣的:(python,数据分析)