NSIDC Data Download Script修改为批量下载

缺乏、安全感 2023-01-19 03:07 76阅读 0赞

最近从NSIDC下载数据,想批量下载每一年的1-2月数据

因此对他官方的代码修改如下

只需要修改main方法即可

其实主要是在每个循环中对filename_filter进行修改

并且每次循环都要将url_list=None,否则后面就不会重新搜索文件

  1. def main(argv=None):
  2. global short_name, version, time_start, time_end, bounding_box, \
  3. polygon, filename_filter, url_list
  4. sy=1979
  5. ey=2020
  6. for num in range(sy,ey+1):
  7. filename_filter = '*'+str(num)+'01*_n.bin'
  8. print(filename_filter)
  9. if argv is None:
  10. argv = sys.argv[1:]
  11. force = False
  12. quiet = False
  13. usage = 'usage: nsidc-download_***.py [--help, -h] [--force, -f] [--quiet, -q]'
  14. try:
  15. opts, args = getopt.getopt(argv, 'hfq', ['help', 'force', 'quiet'])
  16. for opt, _arg in opts:
  17. if opt in ('-f', '--force'):
  18. force = True
  19. elif opt in ('-q', '--quiet'):
  20. quiet = True
  21. elif opt in ('-h', '--help'):
  22. print(usage)
  23. sys.exit(0)
  24. except getopt.GetoptError as e:
  25. print(e.args[0])
  26. print(usage)
  27. sys.exit(1)
  28. # Supply some default search parameters, just for testing purposes.
  29. # These are only used if the parameters aren't filled in up above.
  30. if 'short_name' in short_name:
  31. short_name = 'ATL06'
  32. version = '003'
  33. time_start = '2018-10-14T00:00:00Z'
  34. time_end = '2021-01-08T21:48:13Z'
  35. bounding_box = ''
  36. polygon = ''
  37. filename_filter = '*ATL06_2020111121*'
  38. url_list = []
  39. url_list=None
  40. try:
  41. if not url_list:
  42. url_list = cmr_search(short_name, version, time_start, time_end,
  43. bounding_box=bounding_box, polygon=polygon,
  44. filename_filter=filename_filter, quiet=quiet)
  45. cmr_download(url_list, force=force, quiet=quiet)
  46. except KeyboardInterrupt:
  47. quit()

发表评论

表情:
评论列表 (有 0 条评论,76人围观)

还没有评论,来说两句吧...

相关阅读