【发布时间】:2015-08-21 06:46:24
【问题描述】:
我正在尝试通过 ftp 将 csv 文件发送到远程服务器,但有时我收到套接字错误:
现在我想让函数递归,这样如果函数无法通过 ftp 发送文件,它应该重试。这就是我正在做的事情,即使第一次尝试连接失败,我如何才能成功上传文件。
def upload(ftp,file_path):
os.chdir(file_path)
files=glob.glob('*.csv')
for filename in files:
print filename
ftp.storbinary("STOR " + filename, open(filename, "rb"), 1024)
time.sleep(1)
ftp=FTP(ftp_server)
ftp.login(ftp_user,ftp_password)
ftp.cwd("/test")
file_path='/test'
upload(ftp,file_path)
我收到以下错误:
Traceback(最近一次调用最后一次):
File "file_upload.py", line 205, in <module>
upload(ftp,file_path)
File "file_upload.py", line 105, in upload
ftp.storbinary("STOR " + filename, open(filename, "rb"), 1024)
File "/usr/lib/python2.7/ftplib.py", line 470, in storbinary
self.voidcmd('TYPE I')
File "/usr/lib/python2.7/ftplib.py", line 253, in voidcmd
self.putcmd(cmd)
File "/usr/lib/python2.7/ftplib.py", line 181, in putcmd
self.putline(line)
File "/usr/lib/python2.7/ftplib.py", line 176, in putline
self.sock.sendall(line)
File "/usr/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
socket.error: [Errno 104] Connection reset by peer
【问题讨论】:
标签: python sockets python-2.7 file-upload ftp