一般的小文件可以用邮件附件的形式传递,大文件用邮件较麻烦,一般是采用 FTP 的方式传输。FTP(文件传输协议),是开放协议,广泛应用于文件的传输,FTP 网络层的传输采用 TCP 协议。
Python 的 ftplib 模块定义了 FTP 类,这个类实现了 FTP 协议的客户端方法,可以使用这些方法,完成 FTP 客户端的自动化任务,比如下载多个文件。下面是个实例:
import os
import ftplib
ftpServer = ftplib.FTP('ftp.swfwmd.state.fl.us', 'anonymous','电子邮箱地址')
ftpServer.retrlines("LIST")
dirList = []
ftpServer.retrlines("LIST", dirList.append)
str = dirList[0].split(None, 8)
filename = str[-1].lstrip()
print("正在下载文件 :: ",filename)
localPath = os.path.join(r"D:\ftp\dowloads", filename)
file = open(localPath, "wb")
ftpServer.retrbinary("RETR " + filename, file.write, 8*1024)
file.close()
print("完成!!")
print("检查下载的文件: D:\ftp\dowloads")