【问题标题】:SSLEOFError on FTPS using Python ftplib使用 Python ftplib 的 FTPS 上的 SSLEOFError
【发布时间】:2016-11-10 20:01:44
【问题描述】:

我正在使用 FTPS(显式)连接到 FTP 站点。连接和基本命令工作正常,但是当我尝试检索目录列表或文件时,我得到一个 SSLEOFError。

from ftplib import FTP_TLS
ftps = FTP_TLS()
ftps.auth()
ftps.prot_p()
ftps.login(username, password)
ftps.cwd('/')
ftps.retrlines('LIST')
ftps.quit()

“LIST”命令之前的所有内容都可以毫无问题地执行。对于“LIST”命令,我得到了回复:

'150 Opening data channel for directory listing of "/"

然后我得到错误:

SSLEOFError: EOF occurred in violation of protocol (_ssl.c:645)

我已尝试明确设置 TLSv1 - 无济于事。使用 FTP 客户端,我可以毫无问题地连接到 FTP 站点。我在我的代码中做错了什么?我已经尝试过 Python 3.5 和 2.7。

【问题讨论】:

    标签: python ftplib ftps


    【解决方案1】:

    原来问题是我连接的 FTP 服务器需要恢复会话,而 Python 3.5 和 2.7 不支持。该功能已在 3.6 中添加。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多