我正在尝试使用以下简单代码通过FTP打开连接。但代码只是挂在这条线上。它没有前进,它没有抛出任何例外或错误。我的代码已有6个月的历史了,我已经能够使用此代码连接到我的网站并一直下载文件。今天,当我打开FTP连接时它刚刚开始挂起。
你知道会出现什么问题吗?
ftp = ftplib.FTP("www.mySite.com") # hangs on this line
print("Im alive") # Never get printed out
ftp.login(username, password)
我与其他几个人一起管理网站,但我们没有改变任何事情。
编辑:尝试使用Filezilla
使用相同的用户名和密码进行FTP,但失败了。输出是:
状态:解析www.mySite.com的地址
状态:连接到IPADDRESS ...
状态:建立连接,等待欢迎消息...
错误:连接超时
错误:无法连接到服务器
状态:等待重试...
状态:解析www.mySite.com的地址
状态:连接到IPADDRESS ...
状态:建立连接,等待欢迎消息...
错误:连接超时
错误:无法连接到服务器
答案 0 :(得分:1)
看起来您遇到服务器问题,但如果您希望Python程序出错而不是永远等待服务器,则可以指定超时kwarg到ftplib.FTP
。来自文档(https://docs.python.org/2/library/ftplib.html#ftplib.FTP)
类ftplib.FTP([host [,user [,passwd [,acct [,timeout]]]]])
返回FTP类的新实例。当给出主机时,方法调用connect(host)。另外,当给予用户时 方法调用login(user,passwd,acct)(passwd和 没有给出时,acct默认为空字符串)。可选的超时 参数指定阻塞操作的超时秒数 连接尝试(如果未指定,则为全局默认值 将使用超时设置。)
在2.6版中更改:添加了超时。