【发布时间】:2013-12-07 02:41:57
【问题描述】:
如何设置10~秒的超时时间,如果上传失败或超时重试?
当前代码:
print "Uploading LIST{}.html".format(counter)
ftp_session = ftplib.FTP('ftp.website.com','admin@website.com','password123')
rss_ftp_file = open('OUTPUT/LISTS/LIST{}.html'.format(counter),'r')
ftp_session.cwd("/LISTS/")
ftp_session.storlines('STOR LIST{}.html.tmp'.format(counter), rss_ftp_file)
rss_ftp_file.close()
ftp_session.rename('LIST{}.html.tmp'.format(counter), 'LIST{}.html'.format(counter))
ftp_session.quit()
尝试了以下
for i in range(3):
try:
print "Uploading LIST{}.html".format(counter)
ftp_session = ftplib.FTP('ftp.website.com','admin@website.com','password123','',60)
rss_ftp_file = open('OUTPUT/LISTS/LIST{}.html'.format(counter),'r')
ftp_session.cwd("/LISTS/")
ftp_session.storlines('STOR LIST{}.html.tmp'.format(counter), rss_ftp_file)
rss_ftp_file.close()
ftp_session.rename('LIST{}.html.tmp'.format(counter), 'LIST{}.html'.format(counter))
ftp_session.quit()
break
except:
continue
else:
open('OUTPUT/LISTS/LIST{}.html'.format(counter),'w').close()
但是它会上传每个列表 3 次,它应该上传列表,如果它超时,那么它应该重试,但如果它超时 3 次,它应该从列表文件中删除内容,如 else 所示。如果成功上传,则不应再试,也不应通过 else 语句
谢谢
- 海福克斯
【问题讨论】:
标签: python python-2.7 ftplib