Python 批量下载ERA5再分析资料(API request)

最近需要批量下载逐小时的ERA5变量,通过Python批量下载会高效很多,摸索了一下下载方式ERA5 hourly data on single levels from 1940 to present (copernicus.eu)

以2023年的全球降水率为例

选择产品类型为再分析产品

选择变量为降水率

选取时间范围,2023年全年逐小时

区域范围为全球

数据格式为netcdf文件

点击API request后会直接给出python下载的脚本文件,默认下载文件名为download.nc,保存位置是代码所在的当前文件夹,如spyder是保存在页面左上角的路径位置

import cdsapi

c = cdsapi.Client()

c.retrieve(
    'reanalysis-era5-single-levels',
    {
        'product_type': 'reanalysis',
        'variable': 'mean_total_precipitation_rate',
        'year': '2023',
        'month': [
            '01', '02', '03',
            '04', '05', '06',
            '07', '08', '09',
            '10', '11', '12',
        ],
        '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',
        ],
        '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',
    },
    'download.nc')

到这就可以直接运行python进行脚本下载,但前提是已安装cdsapi模块,官网上也有教程

How to use the CDS API | Copernicus Climate Data Store

其中window系统的安装流程如下How to install and use CDS API on Windows - Copernicus Knowledge Base - ECMWF Confluence Wiki

1.首先需要账号,CDS或者ADS的,注册一个就行,然后登上,我用的CDS

2.进入How to use the CDS API | Copernicus Climate Data Store,如果账号没问题,会在右边黑框里看到两行代码,分别是url和key,里面的内容每个人都不一样

在用户路径底下新建一个txt文件,用户路径一般是C:\Users\+用户名,比如我的用户名是    Lenovo,路径就是C:\Users\Lenovo

把这两行粘贴进文本文件,文件名改成.cdsapirc

3.再打开Anaconda power Prompt,直接输入 pip install cdsapi进行安装

到这就大功告成了,安装完成后运行之前的python脚本即可批量下载数据

其他问题:

在用spyder下载的时候遇到连接问题出现很多warning “http error”,不用中断,让它反复尝试就可以了

我还试图用vscode下载,但是遇到报错"Can't connect to HTTPS URL because the SSL module is not available.",但是我的ssl模块是正常安装的,位置也写在环境路径里了,不清楚问题出在哪里,求大佬解答

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值