質問: self.sendcmd(cmd) File "/usr/lib/python3.4/ftplib.py", line 272, in sendcmd return self.getresp() File "/usr/lib/python3.4/ftplib.py", line 245, in getresp raise error_perm(resp) ftplib.error_perm: 553 /Users/***/Dropbox/MAMP: Is a directory.
回答: > > Traceback (most recent call last): > > File "20170913.py", line 52, in > > ftp.storbinary("STOR /Users/*/Dropbox/MAMP",fp) File "/usr/lib/python3.4/ftplib.py", line 503, in storbinary with self.transfercmd(cmd, rest) as conn: File "/usr/lib/python3.4/ftplib.py", line 398, in transfercmd return self.ntransfercmd(cmd, rest)[0] File "/usr/lib/python3.4/ftplib.py", line 364, in ntransfercmd resp = self.sendcmd(cmd) File "/usr/lib/python3.4/ftplib.py", line 272, in sendcmd return self.getresp() File "/usr/lib/python3.4/ftplib.py", line 245, in getresp raise error_perm(resp) ftplib.error_perm: 553 /Users/*/Dropbox/MAMP: Is a directory. > > > 「MAMPはディレクトリだよ」 って怒られてますね。 Pythonの公式ドキュメントを斜め読みした限りでは、ファイル転送先のアドレス(ファイル名 **含む** ) を書く必要があるのではないかと思います。 21.13. ftplib — FTPプロトコルクライアント つまり、 ``` ftp.storbinary("STOR /Users/***/Dropbox/MAMP",fp) # ↓ ftp.storbinary("STOR /Users/***/Dropbox/MAMP/write1.csv",fp) ``` とファイル名を記述したら動くのではないかと思います。