爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 21607|回复: 13

[求助] Python脚本下载ECMWF再分析资料方法小结

[复制链接]

新浪微博达人勋

发表于 2018-12-30 13:41:09 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
参考网页:
(1)https://confluence.ecmwf.int//display/WEBAPI/Access+ECMWF+Public+Datasets#AccessECMWFPublicDatasets-key
(2)https://apps.ecmwf.int/datasets/
1、注册ECMWF用户
登录https://apps.ecmwf.int/registration/网页注册ECMWF用户。
2、获取用户WEB-API Key
(1)登录https://apps.ecmwf.int/auth/login/,输入用户名和密码,确认登录成功。
(2)登录https://api.ecmwf.int/v1/key/获取用户WEB-API Key,网页上会显示Key的有关信息,内容在一对{…}里(如下图)。需要注意的是用户Key有效期只有一年,到期后需要通过邮件恢复(可以打开https://api.ecmwf.int/v1/key/网页查看用户Key的有效期)。
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
3、粘贴API Key到指定文件
复制网页上{…}的内容,然后粘贴保存在以下文件里:
Unix/Linux操作系统的$HOME/.ecmwfapirc文件,或
windows操作系统的C:\Users\<USERNAME>\.ecmwfapirc文件。其中,<USERNAME>为登录windows操作系统的当前用户账户名称(点击“开始”时小窗体上方显示的账户名)。
创建点开头文件的技巧:使用windows自带记事本新建一个文本文档,改名时先让文件名前后都带小圆点,然后会出现“重命名”的对话框,点击“确定”即可。
4、安装客户端库Python
目前ECMWF Web API仅支持Python语言的客户端库(详见:https://confluence.ecmwf.int/display/WEBAPI/Web-API+Downloads网页介绍),而且仅支持Python2.7.x或Python3. 。从网上搜索下载安装相应版本的Python,笔者使用的版本是Python3.6.2。
5、检查数据集可用性
打开https://apps.ecmwf.int/datasets/网页,其中包含了ECMWF Public Datasets所有可用的数据集,选择需要下载的数据集。在下载之前,首先需要熟悉数据集中的参量、时次和步值,以及它们之间的动态关系。鼓励用户利用Python脚本方式下载数据,通过点击“View MARS request”查看获取代码,且可以通过https://confluence.ecmwf.int/display/WEBAPI/Brief+request+syntax查看简要语法。
6、制作数据集Python脚本
通过点击“View MARS request”查看复制脚本代码,粘贴在文本文件中,根据实际需要编辑脚本代码(百度相关技巧),完成后保存为扩展名为py的文件,如2018.py。关键代码如下:
"class":"ei",              #数据类型:ERA-Interim
"dataset":"interim",       #数据集名称
"format": "netcdf",        #数据格式:NETCDF
"date":"2015-01-01/to/2015-12-31",   #指定下载数据时间跨度
"expver":"1",            
"grid":"0.125/0.125",      #指定数据空间分辨率
"area":"60/50/0/140",     #指定地理范围:北/西/南/东
"levtype":"sfc",           #层次类型:地面
"param":"57.162",         #系统变量名
"step":"0",               #步值或预报时长
"stream":"oper",         
"time":"00:00:00/06:00:00/12:00:00/18:00:00",  #时次
"type":"an",              #类型:再分析(集合预报pf,控制预报fc)
"target":"ec.vicfw.2015.nc",  #目标路径和文件
提示:在脚本代码中使用循环体可以实现批量下载指定时间段或高度层的资料,但下载时间可想而知,而且要保证有足够的存储空间,具体功能实现需要网上搜索相关参考资料(笔者仅实现年份的循环)。
7Windows系统下加载ECMWF-API
(1)进入Python安装位置下的子目录Scripts的上一级目录(如D:\Program Files (x86)\Python36-32\)。
(2)先鼠标左键点击选中Scripts目录,再按住Shift键,在Scripts目录上点击鼠标右键,选择“在此处打开命令窗口”,弹出Windows系统的CMD命令窗口。
(3)在CMD命令窗口输入或鼠标粘贴:pip install https://software.ecmwf.int/wiki/download/attachments/56664858/ecmwf-api-client-python.tgz,回车运行加载。或者,如已下载ecmwf-api-client-python.tgz且存放在Scripts目录下,可以直接输入“pip install ecmwf-api-client-python.tgz”,可以同样加载ECMWF-API。
8、运行Python脚本下载数据
选中存放Python脚本的目录,再按住Shift键,选择“在此处打开命令窗口”,在弹出的CMD命令窗口中输入:
python  xxx.py  (“xxx”是脚本文件名)
注意观察窗口信息,如果顺利很快就会下载数据,间断地刷新该目录,指定下载的文件字节数会不断地增大。提醒一下,在文件下载完成之前,千万不要关闭CMD窗口,否则前功尽弃。
(笔者:yu_zstb,2018-12-29,中国.拉萨)

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-12-24 12:22:08 | 显示全部楼层
你好,请问我为什么一直停留在这个地方啊,都一个多小时了
2019-12-24 11:08:12 ECMWF API python library 1.5.0
2019-12-24 11:08:12 ECMWF API at ****(没有权限发url链接,展示不出来,就不展示了)
2019-12-24 11:08:13 Welcome ***
2019-12-24 11:08:14 In case of problems, please check
[这个也是url链接]
2019-12-24 11:08:15 Request submitted
2019-12-24 11:08:15 Request id: 5e01811e87e11c9143dec928
2019-12-24 11:08:15 Request is submitted
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-9-26 17:07:14 | 显示全部楼层
慧仔333 发表于 2019-9-26 17:05
楼主,下载era50的逐小时再分析数据时,程序开始时是import cdsapi,请问楼主有没有用cdsapi下载数据的详细 ...

刚说错了,是era5逐小时再分析数据
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-9-26 17:05:07 | 显示全部楼层
楼主,下载era50的逐小时再分析数据时,程序开始时是import cdsapi,请问楼主有没有用cdsapi下载数据的详细说明呀?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-9-25 20:45:26 | 显示全部楼层
谢谢楼主分享,学习下
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-9-24 16:45:02 | 显示全部楼层
谢谢楼主分享!!!
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-5 11:06:44 | 显示全部楼层
感谢楼主分享,好好学习下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-1-14 17:22:42 | 显示全部楼层
学习一下{:eb502:}
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-1-7 08:07:00 | 显示全部楼层
官网也可以直接选择时间后下载python脚本,还可以用csh脚本
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-1-5 19:33:33 | 显示全部楼层
感谢分享,作者在日光城写的总结,可以可以!
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表