1
我有一段Python代码来从ftp下载文件。该代码下载列表中的第一个文件,但未能下载第二个文件。可能是什么问题呢?
使用Python从ftp下载
import os, ftplib
destdir='D:\precipitation\dl'
ftp = ftplib.FTP('ftp.itc.nl')
ftp.login('anonymous', '')
ftp.cwd('pub/mpe/msg')
available_days=['summsgmpe_20100101.zip','summsgmpe_20100102.zip', 'summsgmpe_20100103.zip', 'summsgmpe_20100104.zip', 'summsgmpe_20100105.zip', 'summsgmpe_20100106.zip', 'summsgmpe_20100107.zip', 'summsgmpe_20100108.zip']
hdfs = list()
for day in available_days :
file = available_days[available_days.index(day)]
print 'file=', file
local_file = os.path.join(destdir, file)
ftp.retrbinary('RETR %s' %file, open(local_file, 'wb').write)
hdfs.append(os.path.abspath(local_file))
ftp.cwd('..')
ftp.quit()
它是如何失败?抛出异常吗? –
另外,'file = available_days [available_days.index(day)]'这一行可以用'file = day'代替。更好的是,只需在'available_days:'中使用'for file并放下以下行。 –
ftplib.error_perm:550系统找不到指定的文件。 –