python中FTP上传和下载

  写这篇文章方便以后遇到需要定期去上传或下载时直接可以此简单模板。

1.python中FTP上传

#/usr/bin/python # -*- coding: utf-8 -*- import datetimeimport timeimport sysimport osimport ftplibdef Upload_File():    ftp = ftplib.FTP()    TODAY=time.strftime('%Y-%m-%d')    FTPIP= "10.10.10.10"                                           #FTP地址    FTPPORT= 21                                                    #FTP端口号    USERNAME= "user"                        #FTP用户名    USERPWD= "passwd"                        #FTP密码    ftp.connect(FTPIP, FTPPORT)    ftp.login(USERNAME,USERPWD)    ftp.set_pasv(0)                          #打开主动模式    CURRTPATH= "log"    LPath="/data/python/study/"    ftp.cwd(CURRTPATH)    os.chdir(LPath)    UploadLocalFilename=LPath+"code"+TODAY+".txt"    f=open(UploadLocalFilename,'rb')    ftp.storbinary('STOR codes.py',f,1024)    #ftp.storbinary('STOR %s' % os.path.basename(UploadLocalFilename),f,1024)    f.close()    ftp.close()Upload_File()                                #调用函数

2.python中FTP下载

#!/usr/bin/python# -*- coding: utf-8 -*- import sysimport ftplibimport datetimeimport osimport commandsdef Down_File():    ftp=ftplib.FTP()    DATE=datetime.date.today().strftime("%y%m%d")    RPATH="hunk"    LPATH="/home/website/imoney/log"    FTPIP="10.10.10.10"    FTPPORT= 21    USERNAME= "user"    USERPWD= "passwd"    ftp.connect(FTPIP, FTPPORT)    ftp.login(USERNAME,USERPWD)    ftp.set_pasv(0)                           #打开主动模式    ftp.cwd(RPATH)    os.chdir(LPATH)    DownLocalFilename="access% s_log.gz" %DATE    f = open(DownLocalFilename, 'wb')    DownRoteFilename="access% s_log.gz" %DATE    try:        ftp.retrbinary('RETR ' + DownRoteFilename ,f.write,1024)   #可以下载较大文件    except Exception,e:        print "Down access% s_log.gz  is error: " %DATE+str(e)        sys.exit()    f.close()    ftp.close() Down_File()                                #调用函数