如何使用Python批量下载ERA5-LAND逐日数据

学术   2025-01-16 14:46   云南  

目标:批量下载ERA5-LAND逐日气象数据

获取ERA5-LAND数据权限

先在Climate Data Store注册一个账号,登录下面的网址:

  • https://cds.climate.copernicus.eu/datasets/derived-era5-land-daily-statistics?tab=download

注册登录后,先选好你要下载的数据参数,然后滚动网页到下面,有个Terms of use,一定要把这个点上同意!

非常重要,一定要做!不然下载不了

在右上角点击Your Profile,进入Your Profile界面,获取API Token:

先注册,获取API TOKEN
点击Your Profile,复制API Token

在下图的位置,创建一个txt文件,把后面的代码输进去之后,改名,注意,不要名字,只要后缀名,就叫这个.cdsapirc,创建一个权限文件:

在C盘,用户,你的用户名,我的是超级管理员账户,就叫Administrator

把下面代码输入到.cdsapirc文件里面,用文本编辑器编辑即可,保存,注意要换成你自己在上面获取的API TOKEN

url: https://cds.climate.copernicus.eu/api
key: 你的API TOKEN

Python批量下载数据

安装CDSAPI

使用pip安装cdsapi,如果pip直接按不行,可以看参考文献1,里面有更多安装介绍

pip install cdsapi
在这里,安装cdsapi

批量下载

环境安好后,就可以批量下载了,打开Spyder或者Juptyer Notebook,把下面的代码复制进去,改一下参数,即可下载。

在Spyder里面把下面的代码复制进去,按自己情况修改一下参数,运行即可
import cdsapi

# 指定要下载的数据集
dataset = "derived-era5-land-daily-statistics"

# 初始化 CDS API client
client = cdsapi.Client()

# 指定下载位置,可以自己改
output_dir = 'I:/ERA5-LAND/'

# 年份循环,从1995到2024,左闭右开区间
for year in range(1995, 2025):  # 从1995到2024,左闭右开区间,可以自行调整
    # 月份循环,从01到12
    for month in range(1, 13):  # month from 1 to 12
        # Format the month to two digits (e.g., 01, 02, ..., 12)
        month_str = f'{month:02d}'

        request = {
            "daily_statistic""daily_mean",  # 每日均值
            "time_zone""utc+00:00",         # 格林尼治时间
            "variable""2m_temperature",     # 2m temperature 下载参数,可以自己按需要修改
            "year": [str(year)],              # 年份
            "month": [month_str],             # 月份,两位数组成
            "day": ["01"],                    # 每月的1号,在这可以自己改日子
            "format""netcdf",               # 数据格式
        }

        # Specify the output filename
        output_file = output_dir + f'era5_land_temperature_{year}_{month_str}_01.nc'

        # Make the request to the CDS API and download the file
        client.retrieve(dataset, request, output_file)

        print(f"下载已完成 {year}-{month_str}. 数据保存到 {output_file}")

参考文献

  1. https://confluence.ecmwf.int/display/CKB/How+to+install+and+use+CDS+API+on+Windows

走天涯徐小洋地理数据科学
一个爱生活的地理土博,分享GIS、遥感、空间分析、R语言、景观生态等地理数据科学实操教程、经典文献、数据资源
 最新文章