Python function to construct a ZIP archive with stream processing - without having to store the entire ZIP in memory or disk
Project description
stream-zip
Python function to construct a ZIP archive on the fly - without having to store the entire ZIP in memory or disk. This is useful in memory-constrained environments, or when you would like to start returning compressed data before you've even retrieved all the uncompressed data. Generating ZIPs on-demand in a web server is a typical use case for stream-zip.
Offers similar functionality to zipfly, but with a different API, and does not use Python's zipfile module under the hood. Creates both Zip32/2.0/Legacy and Zip64 files.
To unZIP files on the fly try stream-unzip.
Features
In addition to being memory efficient (with some limitations) stream-zip:
-
Constructs ZIP files that can be stream unzipped, for example by stream-unzip
-
Can construct Zip64 ZIP files. Zip64 ZIP files allow sizes far beyond the approximate 4GiB limit of the original ZIP format
-
Can construct ZIP files that contain symbolic links
-
Can construct ZIP files that contain directories, including empty directories
-
Can construct password protected / AES-256 encrypted ZIP files adhering to the WinZip AE-2 specification.
-
Allows the specification of permissions on the member files and directories (although not all clients respect them)
-
By default stores modification time as an extended timestamp. An extended timestamp is a more accurate timestamp than the original ZIP format allows
-
Provides an async interface (that uses threads under the hood)
Visit the stream-zip documentation for usage instructions.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for stream_zip-0.0.75-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e482e73c1aea2a93b6e45f26f6f282cfed0b2acb5fb5bac960dbb7777fc42272 |
|
MD5 | 5fa375f80833451f8b8ee0aded60bcbd |
|
BLAKE2b-256 | a36e6c7973eb8f05848c1f72c207abdca33041d2c8c07a8cb255c6fe5bc85890 |