こんにちは私はシンプルなftpファイルzillaサーバーから単純な読み取りと書き込みを行います私はファイルzillaクライアントでうまく動作するセットアップがあります。読んだり書いたりするときにこのエラーを解決する方法を理解できません。 mkdir作業罰金のような他の事をするだけでなくpython3 ftplib SSLEOFError(8、 'プロトコル(_ssl.c:645)違反でEOFが発生しました')
>>> from ftplib import FTP_TLS
>>> import subprocess
>>> import io
>>> import os
>>> import sys
>>> from datetime import datetime, date, time
>>> from os.path import basename
>>> local_filename = os.path.join(os.getcwd(), 'KansasCityTestData.csv')
>>> print(local_filename)
/var/www/KansasCityTestData.csv
>>> myfile = open(local_filename, 'wb')
>>> myfile
<_io.BufferedWriter name='/var/www/KansasCityTestData.csv'>
>>> command = 'RETR /%s' % 'KansasCityTestData.csv'
>>> command
'RETR /KansasCityTestData.csv'
>>> ftp = FTP_TLS('111.111.111.111') #except my real info
>>> ftp.login('myuser', 'mypass')
'230 Logged on'
>>> ftp.prot_p()
'200 Protection level set to P'
>>> ftp.set_pasv(True)
>>> ftp.retrbinary(command, myfile.write)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.5/ftplib.py", line 441, in retrbinary
with self.transfercmd(cmd, rest) as conn:
File "/usr/lib/python3.5/ftplib.py", line 398, in transfercmd
return self.ntransfercmd(cmd, rest)[0]
File "/usr/lib/python3.5/ftplib.py", line 796, in ntransfercmd
server_hostname=self.host)
File "/usr/lib/python3.5/ssl.py", line 377, in wrap_socket
_context=self)
File "/usr/lib/python3.5/ssl.py", line 752, in __init__
self.do_handshake()
File "/usr/lib/python3.5/ssl.py", line 988, in do_handshake
self._sslobj.do_handshake()
File "/usr/lib/python3.5/ssl.py", line 633, in do_handshake
self._sslobj.do_handshake()
ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:645)
私はUbuntuの16.04でpython3.5.2を使用していますコマンド。私はcimilarの質問をたくさん見てきましたが、ftpには当てはまらないようです。私が見つけることができるのは、python3が明示的にtlsをサポートしていることだけです。どんな助けでも大歓迎です。