用更少的內存歸檔大規模測試日誌

ZipFly是基於zipfile.py的zip存檔生成器。主要用於解決當前在生成非常大的ZIP歸檔文件的時候,佔用大量內存的問題的。

安裝過程

ZipFly需要Python3.5及其以上的版本支持,安裝方式pip3 install zipfly

用法說明

zipfile deflater會緩衝一些數據,因此內存膨脹的現象就會收到限制。數據將以相當固定的時間間隔寫入目標文件中。zipfile的一些默認屬性如下:

paths: [ ]
mode: w
chunksize: (bytes) 16384
compression: Stored
allowZip64: True
compresslevel: None
storesize: (bytes) 0

代碼使用舉例:

import zipfly
# fs (filesystem): 被壓縮文件物理位置
# n: 在壓縮

paths = [ 
    {
        'fs': 'home/user/Videos/jupiter.mp4', 
        'n': 'movies/jupiter.mp4', 
    },       
    {
        'fs': 'home/user/Documents/mercury.mp4', 
        'n': 'movies/mercury.mp4', 
    },          
]

zfly = zipfly.ZipFly( paths = paths )

generator = zfly.generator()
print ( generator )


with open("test.zip", "wb") as f:
    for i in generator:
        f.write(i)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章