爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: leeol

[其他] 利用python脚本,批量自动下载欧洲中心的气象数据

  [复制链接]

新浪微博达人勋

发表于 2017-11-30 13:22:18 | 显示全部楼层
感谢楼主分享
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-1 10:44:24 | 显示全部楼层
小小蛋 发表于 2017-11-28 23:29
万能的楼主,为啥我运行出来的文件是空的,谢谢
图片1是结果,图片2是修改的u.py

已经成功了,强烈建议大家多学习官网,脚本细节的修改还是按照官网的来,不能生搬硬套,特别感谢这个平台,在大家身上学到了好多,我们一起学习~下面是我修改后的代码
  1. #!/usr/bin/env python

  2. import calendar
  3. from ecmwfapi import ECMWFDataServer
  4. server = ECMWFDataServer()

  5. def retrieve_interim():
  6.     """      
  7.        A function to demonstrate how to iterate efficiently over several years and months etc   
  8.        for a particular interim_request.     
  9.        Change the variables below to adapt the iteration to your needs.
  10.        You can use the variable 'target' to organise the requested data in files as you wish.
  11.        In the example below the data are organised in files per month. (eg "interim_daily_201510.grb")
  12.     """
  13.     yearStart = 2003
  14.     yearEnd = 2017
  15.     monthStart = 7
  16.     monthEnd = 7
  17.     for year in list(range(yearStart, yearEnd + 1)):
  18.         for month in list(range(monthStart, monthEnd + 1)):
  19.             startDate = '%04d%02d%02d' % (year, month, 1)
  20.             numberOfDays = calendar.monthrange(year, month)[1]
  21.             lastDate = '%04d%02d%02d' % (year, month, numberOfDays)
  22.             target = "F:/era_down/Jul/interim_daily_%04d%02d.nc" % (year, month)
  23.             requestDates = (startDate + "/TO/" + lastDate)
  24.             interim_request(requestDates, target)

  25. def interim_request(requestDates, target):
  26.     """      
  27.         An ERA interim request for analysis pressure level data.
  28.         Change the keywords below to adapt it to your needs.
  29.         (eg to add or to remove  levels, parameters, times etc)
  30.         Request cost per day is 112 fields, 14.2326 Mbytes
  31.     """
  32.     server.retrieve({
  33.         'stream'  : "oper",
  34.         'levtype' : "sfc",
  35.         'param'   : "165.128/166.128",
  36.         'dataset' : "interim",
  37.         'step'    : "0",
  38.         'grid'    : "0.125/0.125",
  39.         'time'    : "00/06/12/18",
  40.         'date'    : requestDates,
  41.         'type'    : "an",
  42.         'class'   : "ei",
  43.         'area'    : "25/100/-5/130",
  44.         'format'  : "netcdf",
  45.         'target'  : target
  46.     })

  47. #10m u wind component(165.128),
  48. #10m v wind component(166.128),
  49. #2m temperature(167.128).

  50. if __name__ == '__main__':
  51.     retrieve_interim()
复制代码
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-1 12:04:50 | 显示全部楼层
良心好帖呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-1 12:52:41 | 显示全部楼层
denghaijun 发表于 2014-7-13 16:12
楼主,您好,我在做的过程中出了点错误,麻烦您帮我看看,看错在哪里,谢谢了,错误如下:
解压的ecmwf-ap ...

菜单栏里的run在哪里,我在我的Python里没找到
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-7 08:29:39 | 显示全部楼层
標住起來了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-8 08:45:27 | 显示全部楼层
谢谢分享
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2017-12-8 21:02:39 | 显示全部楼层
晚晴山 发表于 2015-7-25 14:54
问题的截图 怎么都放不上来  就是点进general 想获得权限的时候 拉到页面的最后 只出现了一句“You have ac ...

那就是已经获得权限了呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-15 10:52:07 | 显示全部楼层
编程小博士 发表于 2016-10-7 20:36
我用楼主所述的方法进行数据下载的时候 显示这些文件都生成了 但是数据文件大小均为0 楼主这个有方法解决吗 ...

我也是,请问您解决这个问题了吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-15 11:22:13 | 显示全部楼层
christmas001 发表于 2017-12-15 10:52
我也是,请问您解决这个问题了吗

自己解决了,各种参数设置还是从官网上下载一个按着改比较好
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-12-17 20:40:57 | 显示全部楼层
想问一下下载出来的output文件怎样用ncl读取呢?虽然文件属性上面写着是nc文件类型,但是没有后缀呀
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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