使用名称中的特定单词从FTP站点下载文件

时间:2017-04-21 18:06:13

标签: python ftp

你能否解释一下我在这里做错了什么...我是一个Python newby ...这个连接我可以在FTP特定目录中获取文件列表,但是为了BigBang的爱..它没有下载任何文件。我需要下载以特定名称字符串开头的文件:

std::function

1 个答案:

答案 0 :(得分:2)

您在获取文件列表时遇到问题。 -rw------- 1 td dialout 543 Apr 3 20:18 .bash_history 返回包含文件属性的长格式列表,例如

NLST

使用retrlines()获取简短列表。此外,.nlst()函数有点奇怪。它调用它接收的每一行(默认打印)的回调。该命令仅返回状态字符串。您可以添加自己的回调来填充列表,或使用from ftplib import FTP_TLS import fnmatch import os ftps = FTP_TLS('myftp_site.com') ftps.login('userxx', 'pwxx') ftps.prot_p() ftps.cwd('Inbox') print("File list:") list_of_files = [] ftps.retrlines("NLST", list_of_files.append) # ...or use the existing helper # list_of_files = ftps.nlst() dest_dir = "C:\DownloadingDirectory" for name in list_of_files: if fnmatch.fnmatch(name,"StartingFileName*"): with open(os.path.join(dest_dir, name), "wb") as f: ftps.retrbinary("RETR {}".format(name), f.write) ftps.quit() 命令为您获取列表。

Drawable bgDrawable = imageViewNote.getBackground();