出力ファイルを圧縮するスクリプトがあります。問題は、ファイルの1つが4Gigを超えていることです。標準のzipではなくZip64拡張機能を使用するようにスクリプトを変換するにはどうすればよいですか?
これが私が現在圧縮している方法です:
try:
import zlib
compression = zipfile.Zip_DEFLATED
except:
compression = zipfile.Zip_STORED
modes = { zipfile.Zip_DEFLATED: 'deflated',
zipfile.Zip_STORED: 'stored',
}
compressed_name = 'edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.Zip'
print 'creating archive'
zf = zipfile.ZipFile('edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.Zip', mode='w')
try:
zf.write(name1, compress_type=compression)
zf.write(name2, compress_type=compression)
zf.write(name3, compress_type=compression)
finally:
print 'closing'
zf.close()
ありがとう!ビル
zipfile-objects を確認してください。
あなたはこれを行うことができます:
zf = zipfile.ZipFile('edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.Zip', mode='w', allowZip64 = True)
このような:
zf = zipfile.ZipFile('edw_files_' + datetime.strftime(date(), '%Y%m%d') + '.Zip', mode='w', allowZip64=True)