Skip to content

Python bindings to the Brotli compression library

License

Notifications You must be signed in to change notification settings

python-hyper/brotlicffi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8e27c66 · Mar 2, 2024
Sep 14, 2023
Nov 17, 2020
Dec 2, 2020
Sep 14, 2023
Sep 14, 2023
Sep 14, 2023
Oct 2, 2015
Nov 28, 2020
Oct 1, 2015
Sep 14, 2023
Oct 3, 2015
Jan 20, 2021
Jul 6, 2021
Mar 2, 2024
Sep 14, 2023
Sep 14, 2023
Jan 21, 2021
Sep 14, 2023

Repository files navigation

BrotliCFFI

Version Version-Conda Downloads CI Status

This library contains Python CFFI bindings for the reference Brotli encoder/decoder, available here. This allows Python software to use the Brotli compression algorithm directly from Python code.

Install from PyPI:

$ python -m pip install brotlicffi

Install from Conda:

$ conda install -c conda-forge brotlicffi

To use it simply, try this:

import brotlicffi
data = brotlicffi.decompress(compressed_data)

More information can be found in the documentation.

Using BrotliCFFI in Projects

The API is 100% compatible with the Brotli Python C bindings. We recommend installing the C bindings on CPython and the CFFI bindings everywhere else (PyPy, etc)

Essentially you use requirements like this:

install_requires=[
    "brotli; platform_python_implementation == 'CPython'",
    "brotlicffi; platform_python_implementation != 'CPython'"
]

and then import the correct Brotli library like so:

try:
    import brotlicffi as brotli
except ImportError:
    import brotli

We provide an example project that shows how to use both libraries together to support Brotli with multiple Python implementations.

License

The source code of BrotliCFFI is available under the MIT license. Brotli itself is made available under the Version 2.0 of the Apache Software License. See the LICENSE and libbrotli/LICENSE files for more information.

Authors

BrotliCFFI/brotlipy was authored by Cory Benfield and is currently maintained by Seth Michael Larson.