Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在ftp服务器Python中复制文件_Python_Ftplib - Fatal编程技术网

在ftp服务器Python中复制文件

在ftp服务器Python中复制文件,python,ftplib,Python,Ftplib,我能够将ftp服务器中的文件复制到不同的位置,方法是将文件写入Web服务器,然后再次上传 是否有任何方法可以将文件内容写入内存,而无需将其写入硬盘并上载到服务器。这是我的密码 filepath = os.path.join(os.path.dirname(os.path.dirname(__file__)),'OpenTable','tempfiles') ftp = ftplib.FTP('ftphost') ftp.login('username','password') filename

我能够将ftp服务器中的文件复制到不同的位置,方法是将文件写入Web服务器,然后再次上传

是否有任何方法可以将文件内容写入内存,而无需将其写入硬盘并上载到服务器。这是我的密码

filepath = os.path.join(os.path.dirname(os.path.dirname(__file__)),'OpenTable','tempfiles')

ftp = ftplib.FTP('ftphost')
ftp.login('username','password')
filenames = []
ftp.retrlines('NLST', filenames.append)
for filename in filenames:

    if filename[len(filename)-3:] == 'zip':

        ftp.cwd("/")
        filepath1 = os.path.join(filepath,filename)
        print filepath1
        r = open(filepath1,'w')

        ftp.retrbinary('RETR ' + filename, r.write)
        ftp.cwd("/BackUp")
        r.close()
        r = open(filepath1,'r')

        ftp.storbinary('STOR ' + filename, r)
        r.close()
        os.remove(filepath1)
        print 'Successfully Backed up ', filename
ftp.quit()
我试着使用StringIO。它似乎不起作用


谢谢。

你能展示一下你用StringIO试过的代码,并告诉它是如何失败的吗?