from pyftpdlib import ftpserver
HOSTNAME = "localhost"
PORT = 5555
authorizer = ftpserver.DummyAuthorizer()
authorizer.add_user("papakri", "dancinghotdogs", "/Users/alexandrospapakribopoulos/Documents/Programming")
authorizer.anonymous("/Users/alexandrospapakribopoulos/Documents/Programming")
handler = ftpserver.FTPHandler
handler.authorizer = authorizer
connection = (HOSTNAME, PORT)
ftpd = ftpsserver.FTPServer(connection, handler)
ftpd.serve_forever()
我正在尝试创建一个基本的FTP,并与我创建的HTTP服务器连接和连接。 我对python有点陌生,所以即使它真的很明显,也请指出来。 我正在使用python 2.7.10。 提前谢谢。
- 如果不先这样做,你已经
pip install pyftpdlib
了 - 下一步您错误地导入 ftp 服务器
from pyftpdlib.servers import FTPServer
这是您应该根据文档导入它的方式 https://pythonhosted.org/pyftpdlib/tutorial.html#building-a-base-ftp-server - 然后,可以将连接详细信息馈送到构造函数中
确保已安装软件包:
pip install pyftpdlib
如果您使用虚拟环境,请确保在安装了虚拟环境的情况下执行此操作。如果你不知道我在说什么,就忘记这句话。
然后,根据存储库中的示例, 您的代码应该是:
from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
authorizer = DummyAuthorizer()
authorizer.add_user("user", "12345", "/home/giampaolo", perm="elradfmw")
authorizer.add_anonymous("/home/nobody")
handler = FTPHandler
handler.authorizer = authorizer
server = FTPServer(("127.0.0.1", 21), handler)
server.serve_forever()
与包版本相比,您的代码段可能已过期。
看起来你有osx操作系统.对于Mac,你可以安装python使用brew
如下:
brew install python
然后你有pip
Python 的包管理器,然后你可以使用以下命令安装pyftpdlib
包:
pip install pyftpdlib
然后您可以再次尝试运行代码
总之,我可以说你可以像这样在操作系统中高大的包:
Linux基于apt-get存储库管理器:
sudo apt-get install pip
pip install your_package_name
OSX:
brew install python
pip install your_package_name
CentOS/RHEL
sudo yum install python-pip
pip install your_package_name