用Python下载美国国家气候数据中心(NCDC)的气候数据
美国国家气候数据中心的官网地址是https://www.ncdc.noaa.gov/
气候数据的下载地址是:
长格式:ftp://ftp.ncdc.noaa.gov/pub/data/noaa/,这种就是《hadoop权威指南》所使用的数据集格式。
短格式:ftp://ftp.ncdc.noaa.gov/pub/data/noaa/isd-lite/
这两个地址是在网上查到的,从官网怎样找到,我没有发现。
浏览器打开这个网址以后,是以年份为目录的目录列表,从1901年开始,一直到今年,2019年。
每个目录里面是形如029070-99999-1901.gz这样的数据,数量不等,年份越晚,文件越多,应当是因为技术越来越发达,数据量也随之增大。
显然,这样的数据是不可能手工下载的,网上也没找到正确的下载地址,写个程序自己下吧。
参考了这篇文档https://blog.csdn.net/LIHUINIHAO/article/details/38315231,做了一些修改。此文档中的地址目前已无效,我将其改为ftp.ncdc.noaa.gov。
在开发环境中运行。
import sys
import os
from ftplib import FTP #服务器链接
def ftpconnect():
ftp_server = "ftp.ncdc.noaa.gov"
usrname = ""
password = ""
ftp = FTP() ftp.set_debuglevel(2) #打开调试级别2,显示详细信息 port=21
time=30
ftp.connect(ftp_server,port,time)
ftp.login(usrname,password) return ftp #开始下载文件
def downloadfile():
ftp = ftpconnect()
#print ftp.getwelcome() #显示ftp服务器欢迎信息
datapath = "/pub/data/noaa/isd-lite/" #起始年份和终止年份,酌情修改
beginyear = 1934
endyear = 1950 # year=int(sys.argv[1]) #年份循环 currentyear = beginyear #当前执行年份 # while year<=int(sys.argv[2]):
while currentyear <= int(endyear):
path = datapath + str(currentyear) ftp.cwd('/pub/data/noaa/isd-lite/' + str(currentyear)) # li = ftp.nlst(path) #创建指定年份的目录
# path = sys.argv[3]+'/'
path = "weatherdata" + '/' dir = str(currentyear)
new_path = os.path.join(path, dir)
if not os.path.isdir(new_path):
os.makedirs(new_path) for eachFile in li:
localpaths = eachFile.split("/")
localpath = localpaths[len(localpaths)-1]
# localpath=new_path + '/'+ str(currentyear) + '--'+localpath#把日期放在最前面,方便排序
localpath=new_path + '/' + localpath #不必用日期排序,第一节是流水号,已自带排序功能
bufsize = 1024 #设置缓冲块大小
fp = open(localpath,'wb') #以写模式在本地打开文件
ftp.retrbinary('RETR ' + eachFile,fp.write,bufsize) #接收服务器上文件并写入本地文件
currentyear = currentyear+1
ftp.set_debuglevel(0) #关闭调试
# fp.close()
ftp.quit() #退出ftp服务器 if __name__=="__main__":
downloadfile()
用Python下载美国国家气候数据中心(NCDC)的气候数据的更多相关文章
- Alibaba Cluster Data 开放下载:270GB 数据揭秘你不知道的阿里巴巴数据中心
打开一篇篇 IT 技术文章,你总能够看到“大规模”.“海量请求”这些字眼.如今,这些功能强大的互联网应用,都运行在大规模数据中心上,然而,对于大规模数据中心,你又了解多少呢?实际上,除了阅读一些科技文 ...
- 5G到来,数据中心如何变革?
导读 5G将要到来,除改变人们的工作生活外,其带宽.延时.连接特性也逼迫着数据中心变革,以满足5G时代需求.具体而言,5G将从形状规模.硬件组成及软件规模三面变革数据中心. 5G带来什么 高带宽.低延 ...
- 转-Uptime与数据中心等级认证
1 数据中心等级认证 随着数据中心的蓬勃发展,越来越多的标准被制定出具.其中,Uptime Tier认证在业内是认同度最高的标准.以前,Uptime在中国的宣传很少,很多人对Uptime及其认证体系不 ...
- Alibaba Cluster Data 开源:270GB 数据揭秘你不知道的阿里巴巴数据中心
打开一篇篇 IT 技术文章,你总能够看到“大规模”.“海量请求”这些字眼.如今,这些功能强大的互联网应用,都运行在大规模数据中心上,然而,对于大规模数据中心,你又了解多少呢?实际上,除了阅读一些科技文 ...
- 透过微软研究院在“数据中心网络”的重大进展看SIGCOMM 2013
2013" title="透过微软研究院在"数据中心网络"的重大进展看SIGCOMM 2013"> 编者按:于8月12日至16日在香港举行的SI ...
- SQL Azure (17) SQL Azure V12 - 跨数据中心标准地域复制(Standard Geo-Replication)
<Windows Azure Platform 系列文章目录> 熟悉Microsoft Azure平台的读者都了解,Azure SQL Database提供不同等级的,跨数据中心的异地冗余 ...
- Google数据中心B4网络具体实现
① 背景介绍 Google的网络有两种,一种是数据中心内部网络,另外一种是WAN网,其中WAN网又分为两种:一是数据中心之间的互联网络,属于内部网络(G-Scale Network),另外一种是面向I ...
- 云计算和大数据时代网络技术揭秘(八)数据中心存储FCoE
数据中心存储演化——FCoE 数据中心三大基础:主机 网络 存储 在云计算推动下,存储基础架构在发生演变 传统存储结构DAS.SAN在发展中遇到了布线复杂.能耗增多的缺点(原生性),需要对架构做根 ...
- SDN理解:云数据中心底层网络架构
目录 - 目录 - 云数据中心流量类型 - NSX整体网络结构 - 管理网络(API网络) - 租户网络 - 外联网络 - 存储网络 - openstack整体网络结构 - 管理网络:(上图中蓝线) ...
随机推荐
- codeblocks技巧收集
Ctrl+Shift+C 注释代码块 Ctrl+Shift+X 取消注释
- IIS 之 应用程序池
IIS(Internet Information Services),由于我使用的是Windows10系统,所以本文以其内置 10.0.14393.0 版本说明. 应用程序池 → 右键(待设置应用程序 ...
- 分析各种Android设备屏幕分辨率与适配 - 使用大量真实安卓设备采集真实数据统计
一. 数据采集 源码GitHub地址 : -- SSH : git@github.com:han1202012/DisplayTest.git; -- HTTP : https://github.co ...
- Socket网络编程--网络爬虫(1)
我们这个系列准备讲一下--网络爬虫.网络爬虫是搜索引擎系统中十分重要的组成部分,它负责从互联网中搜集网页,采集信息,这些网页信息用于建立索引从而为搜索引擎提供支持,它决定着整个引擎系统的内容是否丰富, ...
- IIS7 配置 PHP5.6
环境: 操作系统:Win7 & 10 (x64) 中文专业版 PHP :V5.6 首先添加IIS. 控制面板-〉程序-〉打开或关闭Windows功能 1. 勾选"Inte ...
- Json Web Token(JWT)
Json web token (JWT),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(Si ...
- python3二元Logistics Regression 回归分析(LogisticRegression)
纲要 boss说增加项目平台分析方法: T检验(独立样本T检验).线性回归.二元Logistics回归.因子分析.可靠性分析 根本不懂,一脸懵逼状态,分析部确实有人才,反正我是一脸懵 首先解释什么是二 ...
- 仿迅雷播放器教程 -- duilib界面(13)
经过了这么多篇文章的讲解,相信大家也对界面库有一定了解了,用一个新的界面库,肯定要对它进行全方位考察.鉴于公司目前所有的产品都是MFC做的,全部转换成duilib肯定不现实,并且公司的很多项目逻辑和界 ...
- [Object Tracking] Overview of algorithms for Object Tracking
From: https://www.zhihu.com/question/26493945 可以载入史册的知乎贴 目标跟踪之NIUBILITY的相关滤波 - 专注于分享目标跟踪中非常高效快速的相关滤波 ...
- [Full-stack] 网页布局艺术 - Less
故事背景 一个过程: template/html ----> css ----> less ----> bootstrap/flex ----> Semantic-ui fle ...