python开发ftp服务器(pyftpdlib)

转载自https://blog.csdn.net/qiye_/article/details/50771195

今天想在实验室搭建一个ftp服务器,用来分享一些资料,于是就想到了利用python来进行开发。

ftp服务器的本质还是利用socket编程来实现,只不过遵循特定的协议而已,我查了一下协议是RFC959

当然为了不重复造轮子,先看看有没有开源的lib,百度一下找到了pyftpdlib这个库,查看了一下这个库,发现代码量并不大,之后的博客打算进行源码分析。

不过现在当然是快速的使用。

  首先当然是安装pyftpdlib,学过python的肯定知道使用 pip install pyftpdlib来安装。然后看了一些这个库的说明文档,就可以写代码了,也就15行左右。

我使用的工具是pycharm,下面把代码附在下面有详细的注释。

[python]  view plain  copy
  1. #coding:utf-8  
  2. from pyftpdlib.authorizers import DummyAuthorizer  
  3. from pyftpdlib.handlers import FTPHandler  
  4. from pyftpdlib.servers import FTPServer  
  5. #新建一个用户组  
  6. authorizer = DummyAuthorizer()  
  7. #将用户名,密码,指定目录,权限 添加到里面  
  8. authorizer.add_user("fan""root""D:/", perm="elr")#adfmw  
  9. #这个是添加匿名用户,任何人都可以访问,如果去掉的话,需要输入用户名和密码,可以自己尝试  
  10. authorizer.add_anonymous("D:/")  
  11.   
  12. handler = FTPHandler  
  13. handler.authorizer = authorizer  
  14. #开启服务器  
  15. server = FTPServer(("127.0.0.1"21), handler)  
  16. server.serve_forever()  
然后将程序运行起来,接下来看一下效果,在浏览器上ftp://localhost/

猜你喜欢

转载自blog.csdn.net/zyk123zrx/article/details/80719106