| 操作系统 办公 实用知识 设计 开发 WEB开发 移动开发 数据库 软件工程 网管 安全 管理 信息化 答疑 渠道 |
用python的ftplib模块编写ftp客户端程序ftplib模块定义了FTP类和一些方法,用以进行客户端的ftp编程。我们可用python编写一个自已的ftp客户端程序,用于下载文件或镜像站点。如果想了解ftp协议的详细内容,请参考RFC959。 该模块是python的通用模块,所以默认应该已安装。ftplib模块使用很简单,暂时只有一个FTP类和十几个函数。下面用一个交互方式演示一下ftplib的主要功能。 >>>from ftplib import FTP >>>ftp=FTP('ftp.python.org') >>>ftp.login() '230 Login successful.' >>>ftp.dir() drwxrwxr-x 7 1004 1004 512 Aug 13 01:35 pub >>>ftp.cwd('pub') '250 Directory successfully changed.' >>>ftp.dir() drwxrwxr-x 5 1000 1004 1024 Dec 24 11:04 docs.python.org drwxrwsr-x 2 1002 1004 512 Oct 12 2001 jython lrwx------ 1 0 1003 25 Aug 03 2001 python -> www.python.org/ftp/python drwxr-xr-x 9 1018 1004 512 Feb 02 03:44 pyvault drwxr-xr-x 2 1005 1004 512 May 06 2003 tmp drwxrwsr-x 59 1004 1004 3072 Feb 03 14:58 www.python.org >>>ftp.quit() '221 Goodbye.' 下面是一个下载文件的示例 #!/usr/bin/env python #author:Jims of www.ringkee.com #create date: 2005/02/05 #description: Using ftplib module download a file from a ftp server. from ftplib import FTP ftp=FTP() ftp.set_debuglevel(2) #打开调试级别2,显示详细信息 ftp.connect('ftp_server','port') #连接 ftp.login('username','password') #登录,如果匿名登录则用空串代替即可 print ftp.getwelcome() #显示ftp服务器欢迎信息 ftp.cwd('xxx/xxx/') #选择操作目录 bufsize = 1024 #设置缓冲块大小 filename='dog.jpg' file_handler = open(filename,'wb').write #以写模式在本地打开文件 ftp.retrbinary('RETR dog.jpg',file_handler,bufsize) #接收服务器上文件并写入本地文件 ftp.set_debuglevel(0) #关闭调试 ftp.quit() #退出ftp服务器 下面是一个上传文件的示例,要成功运行该脚本,需在ftp服务器上有上传文件的权限。 #!/usr/bin/env python #author:Jims of www.ringkee.com #create date: 2005/02/05 #description: Using ftplib module upload a file to a ftp server. from ftplib import FTP ftp=FTP() ftp.set_debuglevel(2) ftp.connect('ftp_server','port') ftp.login('username','password') print ftp.getwelcome() ftp.cwd('xxx/xxx/') bufsize = 1024 filename='dog.jpg' file_handler = open(filename,'rb') ftp.storbinary('STOR dog.jpg',file_handler,bufsize) #上传文件 ftp.set_debuglevel(0)
今日推荐
|
重点推荐
领军企业技术文库
+更多领军技术文库
最新专题
电子杂志订阅
| ||||||||