python 在内存中创建zip文件流

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 在内存中创建zip文件流相关的知识,希望对你有一定的参考价值。

import io
from zipfile import ZipFile


def create_zip_inmemory(structs):
    with io.BytesIO() as buffer:
        with ZipFile(buffer, 'w') as zf:
            for filename, content in structs:
                zf.writestr(filename, content)
        buffer.seek(0)
        return buffer.read()


if __name__ == '__main__':
    import sys
    data = create_zip_inmemory([
        ('a.txt', 'hello'),
        ('b.txt', 'world'),
    ])
    try:
        open(sys.argv[1], 'wb').write(data)
    except IndexError:
        print('Usage: {0} <out-file>'.format(sys.argv[0]))

以上是关于python 在内存中创建zip文件流的主要内容,如果未能解决你的问题,请参考以下文章

在内存中创建一个 Zip 文件

SevenZipSharp - 压缩内存流

Spring MVC - 在内存中创建一个ZIP文件,让用户下载

如何在python中创建一个zip文件

从内存中的 url 下载图像并在内存中创建 zip 存档以发送到浏览器

为啥 Python zipfile 模块在 zip 文件中创建完整路径