python从ftp下载数据保存实例

时间:2022-10-07 13:32:17 

《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()

标签:ftp下载数据
0
投稿

猜你喜欢

  • PHP MVC框架中类的自动加载机制实例分析

    2023-11-04 09:18:09
  • WEB页面工具语言XML应用分类之运用

    2008-05-29 10:58:00
  • windows 2000 IIS下配置Php+Mysql+zend的图文教程(完整版)

    2007-06-15 10:51:00
  • 记录无法安装mysql-Invalid GPG Key from file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql的解决办法

    2024-01-13 00:24:22
  • springBoot下实现java自动创建数据库表

    2024-01-24 12:26:31
  • Sqlserver timestamp数据类使用介绍

    2024-01-13 22:31:11
  • 在ORACLE移动数据库文件

    2024-01-17 02:44:36
  • Vscode编辑器的巧妙用法(快速格式化代码的方法)

    2022-07-02 01:13:33
  • 如何把Recordset转换成彩色的XML文件?

    2009-11-02 20:22:00
  • Vue + Node.js + MongoDB图片上传组件实现图片预览和删除功能详解

    2024-05-10 14:14:56
  • django 微信网页授权认证api的步骤详解

    2021-09-15 03:58:40
  • matplotlib基础绘图命令之errorbar的使用

    2022-03-10 23:20:38
  • Python决策树和随机森林算法实例详解

    2021-12-15 21:44:24
  • matplotlib基本图形绘制操作实例

    2023-07-14 18:18:01
  • Python用dilb提取照片上人脸的示例

    2021-07-04 23:34:47
  • 基于Python中求和函数sum的用法详解

    2022-12-05 23:26:18
  • Python 在局部变量域中执行代码

    2023-06-12 04:57:15
  • Python Selenium模块安装使用教程详解

    2021-10-06 02:23:25
  • Python实现仿射密码的思路详解

    2021-04-17 22:32:00
  • Python 数据可视化神器Pyecharts绘制图像练习

    2021-01-27 17:42:04
  • asp之家 网络编程 m.aspxhome.com