手机
当前位置:查字典教程网 >脚本专栏 >python >python从ftp下载数据保存实例
python从ftp下载数据保存实例
摘要:《hadoop权威指南》的天气数据可以在ftp://ftp3.ncdc.noaa.gov/pub/data/noaa下载,在网上看到这个数据...

《hadoop权威指南》的天气数据可以在ftp://ftp3.ncdc.noaa.gov/pub/data/noaa下载,在网上看到这个数据好开心,打开ftp发现个问题,呀呀,这么多文件啊,我一个个去点另存为,得点到啥时候啊,迅雷应该有批量下载,只是我没找到,估计是我浏览器把迅雷禁掉了,干脆自己用python写一个实现下载好了,网上早了一下,发现很简单啊

复制代码 代码如下:

#!/usr/bin/python

#-*- coding: utf-8 -*-

from ftplib import FTP

def ftpconnect():

ftp_server = 'ftp3.ncdc.noaa.gov'

username = ''

password = ''

ftp=FTP()

ftp.set_debuglevel(2) #打开调试级别2,显示详细信息

ftp.connect(ftp_server,21) #连接

ftp.login(username,password) #登录,如果匿名登录则用空串代替即可

return ftp

def downloadfile():

ftp = ftpconnect()

#print ftp.getwelcome() #显示ftp服务器欢迎信息

datapath = "/pub/data/noaa/"

year=1911

while year<=1930:

path=datapath+str(year)

li = ftp.nlst(path)

for eachFile in li:

localpaths = eachFile.split("/")

localpath = localpaths[len(localpaths)-1]

localpath='weatherdata/'+str(year)+'--'+localpath#把日期放在最前面,方便排序

bufsize = 1024 #设置缓冲块大小

fp = open(localpath,'wb') #以写模式在本地打开文件

ftp.retrbinary('RETR ' + eachFile,fp.write,bufsize) #接收服务器上文件并写入本地文件

year=year+1

ftp.set_debuglevel(0) #关闭调试

fp.close()

ftp.quit() #退出ftp服务器

if __name__=="__main__":

downloadfile()

【python从ftp下载数据保存实例】相关文章:

python线程池的实现实例

python 合并文件的具体实例

python在多玩图片上下载妹子图的实现代码

python登录QQ邮箱发信的实现代码

python解析json实例方法

python 数据加密代码

python 从远程服务器下载东西的代码

python strip()函数 介绍

python操作MySQL数据库具体方法

Python修改Excel数据的实例代码

精品推荐
分类导航