Python-在没有内存膨胀的情况下编写大型ZIP归档

2020-05-16 06:53:18

ZipFly是一个基于zipfile.py.的zip归档生成器,它是由buzon.io创建的,用于生成非常大的ZIP归档,以便立即发送给客户端,或者用于写入大型ZIP归档,而不会导致内存膨胀。

基本用例是动态压缩。一些数据将通过zipfile减速装置进行缓冲,但内存膨胀将受到非常严格的限制。数据将以相当规律的间隔写入目标。

导入zipfly路径=[{';fs';:';home/user/video/jupiter.mp4';,';Movies/jupiter.mp4';,},{';fs';:';home/user/document/mercury.mp4&39;,';n';:';Movies/Mercury.mp4';:';电影/Mercury.mp4&39;:';电影/Mercury.mp4';:';电影/Mercury.mp4';:';,},]zfly=zipfly.。ZipFly(路径=路径)生成器=zfly。Generator()在0x7f85aad60b13>;打印(Generator)#<;生成器对象生成器,打开(";test.zip";,";wb";)为f:for i in Generator:F.write(I)。

使用大小估计创建ZIP文件使用BufferPredictionSize计算生成的归档的正确大小。

流式传输大文件在python中读取单个非常大的二进制文件的有效方式。

在Zip中流式传输多个文件最简单的方法是使用Django或Flask内置的流式传输功能。

圣地亚哥的开源项目得到了他的赞助人的支持。如果你觉得这个项目很有帮助,我们会很感激你对帕特隆基金会的任何金钱贡献,并会很好地创造性地利用它。

这个库是由buzon.io创建的,由麻省理工学院发布。版权所有2019 Growth HQ,Inc.