Python批量下载ERA5数据
ERA5数据(fifth generation ECMWF atmospheric reanalysis of the global climate)是由欧洲中期天气预报中心(ECMWF)开发的第五代全球气候再分析数据集
1.注册账号:在官网注册账号和密码ECMWF 的 Climate Data Storehttps://cds.climate.copernicus.eu/user/register?destination=%2F%23!%2Fhome
2.获取 API 和key:先登录Climate Data Storehttps://cds.climate.copernicus.eu/how-to-api
复制黑色方框区域内的两行内容,包Url
和key
3.配置.cdsapirc 文件:在C:\Users\username
目录下创建一个.cdsapirc
文件,将复制的Url
和key
粘贴到该文件中,并确保verify: 0
,表示同意下载协议(这一步就是将上一步的url
和keyf复制到记事本txt,然后保存到C:\Users\username目录下面,文件格式保存为.cdsapirc
文件)
4.安装 cdsapi 库:打开 Anaconda Prompt,输入以下命令安装cdsapi
conda config --add channels conda-forge
conda install cdsapi
5.选择数据:登录Climate Data Store官网,搜索 ERA5,进入数据集页面后,选择Download data
,然后选择所需的气象数据指标、年份、日期、时刻、空间覆盖范围和数据格式等参数,最后点击Accept terms
6.
获取 API 请求代码:点击页面底部的Show API request
,复制出现的代码
7.编写 Python 脚本并运行:打开 Spyder 或其他 Python 编辑器,新建一个文件,将复制的 API 请求代码粘贴到文件中。以下是一个简单的示例代码(具体代码根据官网最新的来,可能代码会有更新,跟之前的不太一样):
#Python
import cdsapi
c = cdsapi.Client()
c.retrieve('reanalysis-era5-land', {
'format': 'netcdf',
'variable': 'u_component_of_wind',
'v_component_of_wind',
'vertical_velocity'
'year': "2000", "2001", "2002",
"2003", "2004", "2005",
"2006", "2007", "2008",
"2009", "2010", "2011",
"2012", "2013", "2014",
"2015", "2016", "2017",
"2018", "2019", "2020",
"2021", "2022", "2023",
"2024"
'month': '01','02','03'
'day': '01',
'time': ('00:00', '01:00', '02:00'),
}, 'D:/data/download.nc') #保存到D:/data/这个指定的文件夹
选取数据类型和变量
接着选取年份、月份、时间点、高度层
下载文件格式为nc文件,点击Show API request获取python下载的页码
如果出现无法下载的问题,一般就是.cdsapirc
文件没设置好
作者:lwzdzcbb