Python SSL FTP连接超时
我正在尝试从Python(v3.3.0)中使用SSL建立到FTP服务器的连接。但我总是有一个暂停。我没有使用端口990作为SSL端口(偏执狂)。这就是问题的原因吗?如果是,我如何指定我正在使用的端口 这是我的剧本:Python SSL FTP连接超时,python,ssl,ftp,timeout,Python,Ssl,Ftp,Timeout,我正在尝试从Python(v3.3.0)中使用SSL建立到FTP服务器的连接。但我总是有一个暂停。我没有使用端口990作为SSL端口(偏执狂)。这就是问题的原因吗?如果是,我如何指定我正在使用的端口 这是我的剧本: from ftplib import FTP from ftplib import FTP_TLS ftps = FTP_TLS('ip address') ftps.auth() ftps.sendcmd('USER uname')
from ftplib import FTP
from ftplib import FTP_TLS
ftps = FTP_TLS('ip address')
ftps.auth()
ftps.sendcmd('USER uname')
ftps.sendcmd('PASS password')
ftps.prot_p()
ftps.retrlines('LIST')
ftps.close()
结果如下:
Traceback (most recent call last):
File "Scrpit name removed for posting", line 12, in <module>
ftps.retrlines('LIST')
File "C:\Python33\lib\ftplib.py", line 767, in retrlines
conn = self.transfercmd(cmd)
File "C:\Python33\lib\ftplib.py", line 381, in transfercmd
return self.ntransfercmd(cmd, rest)[0]
File "C:\Python33\lib\ftplib.py", line 742, in ntransfercmd
conn, size = FTP.ntransfercmd(self, cmd, rest)
File "C:\Python33\lib\ftplib.py", line 343, in ntransfercmd
source_address=self.source_address)
File "C:\Python33\lib\socket.py", line 424, in create_connection
raise err
File "C:\Python33\lib\socket.py", line 415, in create_connection
sock.connect(sa)
TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
回溯(最近一次呼叫最后一次):
文件“Scrpit名称已删除以便过帐”,第12行,在
ftps.retrlines(“列表”)
文件“C:\Python33\lib\ftplib.py”,第767行,在retrlines中
conn=self.transfercmd(cmd)
文件“C:\Python33\lib\ftplib.py”,第381行,在transfercmd中
返回self.ntransfercmd(cmd,rest)[0]
文件“C:\Python33\lib\ftplib.py”,第742行,在ntransfercmd中
conn,size=FTP.ntransfercmd(self,cmd,rest)
文件“C:\Python33\lib\ftplib.py”,第343行,在ntransfercmd中
source\u address=self.source\u address)
文件“C:\Python33\lib\socket.py”,第424行,位于create\u connection中
提出错误
文件“C:\Python33\lib\socket.py”,第415行,位于create_connection中
sock.connect(sa)
TimeoutError:[WinError 10060]连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机没有响应
如果您有任何建议,我们将不胜感激。在查看之后,它似乎不想使用任何端口,只想使用21
我想你应该能解决这个问题,比如
import ftplib
ftplib.FTP.port = 995 # or whatever port you are using
ftps = ftplib.FTP_TLS('hostname', 'user', 'pwd')
ftps.retrlines('LIST')
在查看之后,它似乎不想使用任何端口,只想使用21
我想你应该能解决这个问题,比如
import ftplib
ftplib.FTP.port = 995 # or whatever port you are using
ftps = ftplib.FTP_TLS('hostname', 'user', 'pwd')
ftps.retrlines('LIST')
通过
连接设置端口
import ftplib
ftps = ftplib.FTP_TLS()
ftps.connect ('hostname', 991)
通过
连接设置端口
import ftplib
ftps = ftplib.FTP_TLS()
ftps.connect ('hostname', 991)
我使用的是FTP的标准端口21,但不是SSL的标准990,那么如何设置SSL端口?据我所知,使用上述方法连接到指定端口。为了隔离问题,我将SSL端口更改为默认的990,但仍然存在相同的超时问题。我通过Filezilla clientI手动连接验证了端口更改。我使用的是FTP的标准端口21,而不是SSL的标准990。因此,如何设置SSL端口?据我所知,使用上述方法连接到指定端口。为了隔离问题,我将SSL端口更改为默认的990,但我仍然有同样的超时问题。我通过Filezilla clientThank手动连接验证了端口更改。在谷歌搜索解决方案后,我终于找到了解决问题的答案。我现在可以得到一个目录列表了!谢谢-在谷歌搜索解决方案后,我终于找到了这个解决问题的答案。我现在可以得到一个目录列表了!