我試圖在Python中創建內存中的zip文件並將其上傳到Amazon S3。我已經閱讀了關於此事的類似帖子,但無論我嘗試什麼,Windows和Linux(RHEL5)都無法打開它(它已損壞)。下面是我運行代碼:內存中的Zip文件Python錯誤
f_redirects = StringIO()
f_links = StringIO()
f_metadata = StringIO()
# Write to the "files"
zip_file = StringIO()
zip = zipfile.ZipFile(zip_file, 'a', zipfile.ZIP_DEFLATED, False)
zip.writestr('redirects.csv', f_redirects.getvalue())
zip.writestr('links.csv', f_bad_links.getvalue())
zip.writestr('metadata.csv', f_metadata.getvalue())
f_redirects.close()
f_links.close()
f_metadata.close()
k = Key(BUCKET)
k.key = '%s.zip' % base_name
k.set_metadata('Content-Type', 'application/zip')
k.set_contents_from_string(zip_file.getvalue())
zip.close()
zip_file.close()
首先,您是否試過在本地保存'.zip'文件並打開它,以查看問題與S3是否有關係? – abarnert