我走過這似乎與已張貼了不少問題了,但是,我有不盡相同的問題下載二進制格式的壓縮文件:使用Python的FTPLIB
我使用python的FTPLIB模塊以及zipfile從二進制格式的ftp下載zip文件。但是,出於某種原因,下載的zip文件似乎是ascii。
我確保在我下載的文件的路徑中不存在領先的/
(與zip規範相匹配)。
outFile = zipfile.ZipFile(local_file_path, 'w')
myftp.retrbinary('RETR %s' %i, outFile.write(i)) #i - target file path on ftp server
此代碼失敗給了我以下錯誤:
st = os.stat(filename)
OSError: [Errno 2] No such file or directory: //$i
我嘗試添加二進制的 'B' 的選項,但zip文件似乎不喜歡它:
outFile = zipfile.ZipFile(local_file_path, 'wb')
這會產生錯誤:
RuntimeError: ZipFile() requires mode "r", "w", or "a"
我正在使用python v2.6。
我在做什麼錯誤,以及如何解決它?