首页 > 编程 > Python > 正文

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

2020-01-04 18:06:23
字体:
来源:转载
供稿:网友

这篇文章主要介绍了python实现简单ftp客户端的方法,涉及ftplib模块的相关使用技巧,需要的朋友可以参考下

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

 

 
  1. #!/usr/bin/python 
  2. # -*- coding: utf-8 -*- 
  3. import ftplib 
  4. import os 
  5. import socket 
  6. HOST = 'ftp.mozilla.org' 
  7. DIRN = 'pub/mozilla.org/webtools' 
  8. FILE = 'bugzilla-3.6.9-to-3.6.10-nodocs.diff.gz' 
  9. def writedata(data): 
  10. f = open(FILE,'wb'
  11. try
  12. f.write(data) 
  13. finally
  14. f.close() 
  15. def main(): 
  16. try
  17. f = ftplib.FTP(HOST) 
  18. except (socket.error, socket.gaierror): 
  19. print 'ERROR:cannot reach " %s"' % HOST 
  20. return 
  21. print '***Connected to host "%s"' % HOST 
  22. try
  23. f.login() 
  24. except ftplib.error_perm: 
  25. print 'ERROR: cannot login anonymously' 
  26. f.quit() 
  27. return 
  28. print '*** Logged in as "anonymously"' 
  29. try
  30. f.cwd(DIRN) 
  31. except ftplib.error_perm: 
  32. print 'ERRORL cannot CD to "%s"' % DIRN 
  33. f.quit() 
  34. return 
  35. print '*** Changed to "%s" folder' % DIRN 
  36. try
  37. #传一个回调函数给retrbinary() 它在每接收一个二进制数据时都会被调用 
  38. f.retrbinary('RETR %s' %FILE, writedata) 
  39. except ftplib.error_perm: 
  40. print 'ERROR: cannot read file "%s"' %FILE 
  41. os.unlink(FILE) 
  42. else
  43. print '*** Downloaded "%s" to CWD' % FILE 
  44. f.quit() 
  45. return 
  46. if __name__ == '__main__'
  47. main() 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表