Skip to content

Latest commit

 

History

History
41 lines (27 loc) · 1.16 KB

README.md

File metadata and controls

41 lines (27 loc) · 1.16 KB

PYZOPFLI

cPython bindings for zopfli.

USAGE

pyzopfli is a package which allows using zopfli library in Python.

Main public module is pyzopfli.zlib. It provides emulation of standard zlib module and can be used in any application as drop-in replace. Decompression functions are imported in pyzopfli.zlib from zlib.

import pyzopfli.zlib as zlib

pyzopfli may be used with gzip or zipfile modules of standard library by replacing their zlib module attribute in runtime.

import pyzopfli.zlib as zlib
import zipfile
zipfile.zlib = zlib

You also can slightly cheat and control power of compression with 'levit' attribute of pyzopli.zlib module

import pyzopfli.zlib as zlib
zlib.levit[zlib.Z_DEFAULT_COMPRESSION] = iterations

pyzopfli.zlib passes standard's library unittest with same failures as native zlib (few failures are errors of decompressor) Same for gzip and zipfile modules with replaced zlib.

TODO

  • Zopfli isn't optimal for already compressed file. Post-processing required to keep some blocks uncompressed.