2013-02-28 149 views
0

我正在使用ftplib模块并希望连接到本地主机上的FTP。我使用下面的代码示例:拒绝连接FTP python 2.7

import ftplib 
f = ftplib.FTP() 
f.connect("localhost") 
f.login() 

ls=[] 
f.retrlines('MLSD',ls.append) 
for entry in ls: 
    print entry 

它给了我一个socket.error: [Errno 61] Connection refused

如何连接到我的本地和我到底做错了什么?最终,我希望使用ftplib将文件从客户端代码发送到服务器代码,两者都运行在同一台机器上。这是为了一个项目,我知道在现实中你不会在同一台机器上。

+0

首先,请报告完整的回溯,或者至少在哪一行有错误,而不是错误消息。 – abarnert 2013-02-28 18:23:18

+0

其次,你有本地机器上运行的FTP服务器吗?如果不是,显然你不能连接到一个不存在的服务器。 – abarnert 2013-02-28 18:23:36

+1

如果你没有一个运行,你的操作系统可能会有一个(我相信许多Windows版本的IIS/PWS包括FTP),或者可能有一个标准的方式来获得一个(例如,在大多数Linux发行版,有很多可以通过apt/rpm/etc选择),或者你可以搜索一个手动安装。 – abarnert 2013-02-28 18:25:26

回答

0

我猜测socket.error异常发生在第3行,你有connect()

Connection refused表示操作系统或防火墙拒绝连接。最可能的原因是您实际上没有在本地计算机上运行FTP服务器。

你没有说你是否做,你没有说你使用的是什么操作系统。但是默认情况下,操作系统没有安装并运行FTP服务器。所以你需要安装一个compatible FTP server。一个很好的考虑是FileZilla服务器。