2
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。提前致谢。

4

3 回答 3

1
于 2017-07-18T06:58:38.503 回答
0

确保已安装软件包:

pip install pyftpdlib

如果您使用虚拟环境,请确保您已安装虚拟环境。如果您不知道我在说什么,请忘记这句话。

然后,根据 repo 中的示例,您的代码应该是:

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()

您的代码段可能与您的软件包版本相比已过时。

于 2017-07-18T07:00:26.030 回答
0

看来你有 osx 操作系统。对于 mac,你可以brew像这样安装 python 使用:

brew install python

然后你有pipPython 的包管理器,然后你可以pyftpdlib使用这个命令安装包:

pip install pyftpdlib

然后您可以再次尝试运行您的代码

总之,我可以说你可以在这样的操作系统中安装包:

基于 linux 的 apt-get 存储库管理器

sudo apt-get install pip
pip install your_package_name

操作系统

brew install python
pip install your_package_name

CentOS/RHEL

sudo yum install python-pip
pip install your_package_name
于 2017-07-18T07:02:50.560 回答