- 积分
- 151
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2020-10-13
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ERA5数据从CDS迁移到了CDS-Beta,按照官网指导更新了cdsapi库和.cdsqpi文件,可以下载几十MB的小文件,但是如果提交几百MB的数据下载请求就会出现ConnectionError: HTTPSConnectionPool(host='object-store.os-api.cci2.ecmwf.int', port=443): Read timed out.的错误,导致下载中断,我查询ERA5数据论坛,在c = cdsapi.Client(timeout=600,quiet=False.debug=True) 加入了timeout、quiet、debug选项,但问题依然没有解决,想请教一下大家有其他办法吗?下面是我的程序。
import cdsapi
import calendar
c = cdsapi.Client(timeout=600,quiet=False.debug=True) # 创建用户
# 数据信息字典
dic = {
'product_type': 'reanalysis', # 产品类型
'format': 'grib', # 数据格式
'variable': [
#'geopotential',
#'relative_humidity',
#'specific_humidity',
# 'temperature',
#'u_component_of_wind',#
'v_component_of_wind',
], # 变量名称
'pressure_level': [
'1', '2', '3',
'5', '7', '10',
'20', '30', '50',
'70', '100', '125',
'150', '175', '200',
'225', '250', '300',
'350', '400', '450',
'500', '550', '600',
'650', '700', '750',
'775', '800', '825',
'850', '875', '900',
'925', '950', '975',
'1000',
],
'year': '', # 年,设为空
'month': '', # 月,设为空
'day': [], # 日,设为空
'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'
],
'grid': [1.0, 1.0], #分辨率
'area': [
70, 60, -20,
180,
],#区域范围
}
# 通过循环批量下载1979年到2020年所有月份数据
for y in range(2004, 2023): # 遍历年
for m in range(6, 9): # 遍历月
day_num = calendar.monthrange(y, m)[1] # 根据年月,获取当月日数
# 将年、月、日更新至字典中
dic['year'] = str(y)
dic['month'] = str(m).zfill(2)
dic['day'] = [str(d).zfill(2) for d in range(1, day_num + 1)]
filename = 'I:/Ensemble prediction WRF/pressure level/VW/' + str(y) + str(m).zfill(2)+'vw.grib' # 文件存储路径
c.retrieve('reanalysis-era5-pressure-levels', dic, filename) # 下载数据
|
|