网络编程
位置:首页>> 网络编程>> Python编程>> python实现简单ftp客户端的方法

python实现简单ftp客户端的方法

作者:不吃皮蛋  发布时间:2023-12-14 20:07:31 

标签:python,ftp

本文实例讲述了python实现简单ftp客户端的方法。分享给大家供大家参考。具体实现方法如下:


#!/usr/bin/python
# -*- coding: utf-8 -*-
import ftplib
import os
import socket
HOST = 'ftp.mozilla.org'
DIRN = 'pub/mozilla.org/webtools'
FILE = 'bugzilla-3.6.9-to-3.6.10-nodocs.diff.gz'
def writedata(data):
 f = open(FILE,'wb')
 try:
   f.write(data)
 finally:
   f.close()
def main():
 try:
   f = ftplib.FTP(HOST)
 except (socket.error, socket.gaierror):
   print 'ERROR:cannot reach " %s"' % HOST
   return
 print '***Connected to host "%s"' % HOST
 try:
   f.login()
 except ftplib.error_perm:
   print 'ERROR: cannot login anonymously'
   f.quit()
   return
 print '*** Logged in as "anonymously"'
 try:
   f.cwd(DIRN)
 except ftplib.error_perm:
   print 'ERRORL cannot CD to "%s"' % DIRN
   f.quit()
   return
 print '*** Changed to "%s" folder' % DIRN
 try:
   #传一个回调函数给retrbinary() 它在每接收一个二进制数据时都会被调用
   f.retrbinary('RETR %s' %FILE, writedata)
 except ftplib.error_perm:
   print 'ERROR: cannot read file "%s"' %FILE
   os.unlink(FILE)
 else:
   print '*** Downloaded "%s" to CWD' % FILE
 f.quit()
 return
if __name__ == '__main__':
 main()

希望本文所述对大家的Python程序设计有所帮助。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com