1、HTTP主要用于基于Web的文件下载以及访问Web服务,一般客户端无须登录就可以访问服务器上的文件和服务。大部分HTTP文件传输请求都用于获取网页(即将网页文件下载到本地)。

2、FTP主要用于匿名下载公共文件,也可以用于两台计算机之间传输文件。FTP要求输入用户名和密码才能访问FTP服务器,但也允许没有账号的用户匿名登录。不过管理员要先设置FTP服务器以允许匿名用户登录。这时,匿名用户的用户名是“anonymous”,密码一般是用户的电子邮件地址。

工作流程:

①客户端连接远程主机上的FTP服务器。

②客户端输入用户名和密码(或“anonymous”和电子邮件地址)。

③客户端进行各种文件传输和信息查询操作。

④客户端从远程FTP服务器退出,结束传输。

如果客户端超过15分钟(900秒)还没有响应,FTP连接会超时并中断。在底层,FTP只使用TCP,而不使用UDP。FTP有两种模式:主动和被动。

3、Python和FTP

from ftplib import FTP
f = FTP('some.ftp.server')
f.login('anonymous','[email protected]')
:
f.quit()

FTP对象的方法

方法描述
login(user='',passwd='')登录FTP服务器,所有参数都是可选的
cwd(path)把当前工作目录设置为path所示的路径
dir([path[,...[,cb]]])显示path目录里面的内容,可选参数cb是一个回调函数,会传递给retrlines()方法
pwd()获取当前工作目录
storlines(cmd,f)给定FTP命令,用来上传文本文。要给定一个文件对象f
storbinary()与上类似,用来处理二进制文件
retrlines(cmd[,cb])给定FTP命令,用来下载文本文件。可选的回调函数cb用于处理文件中的每一行。
retrbinary处理二进制文件
quit()关闭连接并退出
05-18 05:57