- 积分
- 2845
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2018-11-10
- 最后登录
- 1970-1-1
|
发表于 2024-10-14 15:13:26
|
显示全部楼层
不建议使用.download,timeout的概率很大。
import cdsapi
import os
os.environ['CDSAPI_RC'] = 'E:/.cdsapirc'
# 创建一个CDS API客户端
# 创建一个CDS API客户端
client = cdsapi.Client()
# 定义数据集名称
dataset = "reanalysis-era5-single-levels"
# 定义公共请求参数
common_request_params = {
"product_type": ["reanalysis"],
"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"
],
"data_format": "netcdf",
"download_format": "unarchived",
"variable": ["vertical_integral_of_northward_water_vapour_flux"]
}
# 定义要下载的年份
years = list(range(1940, 2024))
# 遍历每一年,下载数据并保存
for year in years:
request = common_request_params.copy()
request["year"] = [str(year)]
# 下载数据
client.retrieve(dataset, request)
我使用这种方式排队,然后在your request里一年一年使用迅雷下载小时数据。可以参考一下 |
|