跳转到主要内容

Brotli压缩库的Python绑定

项目描述

GitHub Actions Build Status Fuzzing Status

Brotli

简介

Broili 是一种通用的无损压缩算法,它结合了现代的 LZ77 算法变体、Huffman 编码和二次上下文建模来压缩数据,其压缩率与目前最好的通用压缩方法相当。它在速度上与 deflate 类似,但提供更密集的压缩。

Broili 压缩数据格式的规范定义在 RFC 7932 中。

Broili 在 MIT 许可证下开源,请参阅 LICENSE 文件。

请注意: brotli 是一种“流”格式;它不包含元信息,如校验和或未压缩数据长度。可以修改压缩流的“原始”范围,解码器不会注意到这一点。

构建说明

Vcpkg

您可以使用 vcpkg 依赖项管理器下载和安装 brotli

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install brotli

由微软团队成员和社区贡献者维护 vcpkg 中的 brotli 端口。如果版本过时,请在 vcpkg 存储库中 创建问题或拉取请求

Bazel

Bazel

CMake

构建和安装 brotli 的基本命令是

$ mkdir out && cd out
$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=./installed ..
$ cmake --build . --config Release --target install

您可以使用其他 CMake 配置。

Python

要安装 Python 模块的最新版本,请运行以下命令

$ pip install brotli

要安装树顶版本,请运行

$ pip install --upgrade git+https://github.com/google/brotli

有关从源代码、开发和测试安装的更多详细信息,请参阅 Python 读取说明

贡献

我们很高兴在 brotli 邮件列表 上回答与库相关的问题。

常规问题/功能请求应在 问题跟踪器 中报告。

有关报告漏洞,请阅读 SECURITY

有关贡献更改,请阅读 CONTRIBUTING

基准测试

相关项目

免责声明: Broili 作者不对本节中提到的第三方项目负责。

Mark Adler 基于 entirely on format specification 独立实现的 解码器

Broili 解码器 的 JavaScript 端口。可以直接通过 npm install brotli 使用

Dominik Homberger 用 haxe 手动移植的 解码器/编码器。输出源代码:JavaScript、PHP、Python、Java 和 C#

7Zip 插件

Dart 本地绑定

Dart 压缩框架,具有 快速基于 FFI 的 Broili 实现,并提供适用于 Win/Linux/Mac 的预构建二进制文件。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

Brotli-1.1.0.tar.gz (7.4 MB 查看哈希值)

上传时间 源代码

构建的发行版

Brotli-1.1.0-cp312-cp312-win_amd64.whl (357.3 kB 查看哈希值)

上传时间 CPython 3.12 Windows x86-64

Brotli-1.1.0-cp312-cp312-win32.whl (333.3 kB 查看哈希值)

上传时间 CPython 3.12 Windows x86

Brotli-1.1.0-cp312-cp312-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.12 musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp312-cp312-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.12 musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp312-cp312-musllinux_1_1_i686.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.12 musllinux: musl 1.1+ i686

Brotli-1.1.0-cp312-cp312-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.12 musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ x86-64

Brotli-1.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp312-cp312-macosx_10_9_x86_64.whl (446.2 kB 查看哈希值)

上传时间 CPython 3.12 macOS 10.9+ x86-64

Brotli-1.1.0-cp312-cp312-macosx_10_9_universal2.whl (873.1 kB 查看哈希值)

上传时间 CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)

Brotli-1.1.0-cp311-cp311-win_amd64.whl (357.3 kB 查看哈希值)

上传时间 CPython 3.11 Windows x86-64

Brotli-1.1.0-cp311-cp311-win32.whl (333.2 kB 查看哈希值)

上传时间 CPython 3.11 Windows x86

Brotli-1.1.0-cp311-cp311-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp311-cp311-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp311-cp311-musllinux_1_1_i686.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ i686

Brotli-1.1.0-cp311-cp311-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

Brotli-1.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.11 manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.11 manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.8 MB 查看哈希值)

上传时间: CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp311-cp311-macosx_10_9_x86_64.whl (446.2 kB 查看哈希值)

上传时间: CPython 3.11 macOS 10.9+ x86-64

Brotli-1.1.0-cp311-cp311-macosx_10_9_universal2.whl (873.1 kB 查看哈希值)

上传时间: CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

Brotli-1.1.0-cp310-cp310-win_amd64.whl (357.3 kB 查看哈希值)

上传时间: CPython 3.10 Windows x86-64

Brotli-1.1.0-cp310-cp310-win32.whl (333.2 kB 查看哈希值)

上传时间: CPython 3.10 Windows x86

Brotli-1.1.0-cp310-cp310-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.10 musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp310-cp310-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.10 musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp310-cp310-musllinux_1_1_i686.whl (2.8 MB 查看哈希值)

上传时间: CPython 3.10 musllinux: musl 1.1+ i686

Brotli-1.1.0-cp310-cp310-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.10 musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.10 manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.10 manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (3.0 MB 查看哈希值)

上传时间: CPython 3.10 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

Brotli-1.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (2.9 MB 查看哈希值)

上传时间: CPython 3.10 manylinux: glibc 2.12+ i686 manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp310-cp310-macosx_10_9_x86_64.whl (446.2 kB 查看哈希值)

上传时间: CPython 3.10 macOS 10.9+ x86-64

Brotli-1.1.0-cp310-cp310-macosx_10_9_universal2.whl (873.0 kB 查看哈希值)

上传时间: CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

Brotli-1.1.0-cp39-cp39-win_amd64.whl (357.3 kB 查看哈希值)

上传时间: CPython 3.9 Windows x86-64

Brotli-1.1.0-cp39-cp39-win32.whl (333.2 kB 查看哈希值)

上传时间: CPython 3.9 Windows x86

Brotli-1.1.0-cp39-cp39-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp39-cp39-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp39-cp39-musllinux_1_1_i686.whl (2.8 MB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.1+ i686

Brotli-1.1.0-cp39-cp39-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.8 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.5+ x86-64

Brotli-1.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (2.7 MB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp39-cp39-macosx_10_9_x86_64.whl (446.2 kB 查看哈希值)

上传于 CPython 3.9 macOS 10.9+ x86-64

Brotli-1.1.0-cp39-cp39-macosx_10_9_universal2.whl (873.0 kB 查看哈希值)

上传于 CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

Brotli-1.1.0-cp38-cp38-win_amd64.whl (357.3 kB 查看哈希值)

上传于 CPython 3.8 Windows x86-64

Brotli-1.1.0-cp38-cp38-win32.whl (333.2 kB 查看哈希值)

上传于 CPython 3.8 Windows x86

Brotli-1.1.0-cp38-cp38-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp38-cp38-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp38-cp38-musllinux_1_1_i686.whl (2.8 MB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ i686

Brotli-1.1.0-cp38-cp38-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.8 MB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.5+ x86-64

Brotli-1.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (2.7 MB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp38-cp38-macosx_10_9_x86_64.whl (446.2 kB 查看哈希值)

上传于 CPython 3.8 macOS 10.9+ x86-64

Brotli-1.1.0-cp38-cp38-macosx_10_9_universal2.whl (873.1 kB 查看哈希值)

上传时间 CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

Brotli-1.1.0-cp37-cp37m-win_amd64.whl (357.5 kB 查看哈希值)

上传时间 CPython 3.7m Windows x86-64

Brotli-1.1.0-cp37-cp37m-win32.whl (333.2 kB 查看哈希值)

上传时间 CPython 3.7m Windows x86

Brotli-1.1.0-cp37-cp37m-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp37-cp37m-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp37-cp37m-musllinux_1_1_i686.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.1+ i686

Brotli-1.1.0-cp37-cp37m-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.8 MB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.5+ x86-64

Brotli-1.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl (2.7 MB 查看哈希)

上传于 CPython 3.7m manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp37-cp37m-macosx_10_9_x86_64.whl (446.1 kB 查看哈希)

上传于 CPython 3.7m macOS 10.9+ x86-64

Brotli-1.1.0-cp36-cp36m-win_amd64.whl (407.7 kB 查看哈希)

上传于 CPython 3.6m Windows x86-64

Brotli-1.1.0-cp36-cp36m-win32.whl (377.5 kB 查看哈希)

上传于 CPython 3.6m Windows x86

Brotli-1.1.0-cp36-cp36m-musllinux_1_1_x86_64.whl (2.9 MB 查看哈希)

上传于 CPython 3.6m musllinux: musl 1.1+ x86-64

Brotli-1.1.0-cp36-cp36m-musllinux_1_1_ppc64le.whl (2.9 MB 查看哈希)

上传于 CPython 3.6m musllinux: musl 1.1+ ppc64le

Brotli-1.1.0-cp36-cp36m-musllinux_1_1_i686.whl (2.8 MB 查看哈希)

上传于 CPython 3.6m musllinux: musl 1.1+ i686

Brotli-1.1.0-cp36-cp36m-musllinux_1_1_aarch64.whl (2.9 MB 查看哈希)

上传于 CPython 3.6m musllinux: musl 1.1+ ARM64

Brotli-1.1.0-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.9 MB 查看哈希)

上传于 CPython 3.6m manylinux: glibc 2.17+ ppc64le

Brotli-1.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.9 MB 查看哈希)

上传于 CPython 3.6m manylinux: glibc 2.17+ ARM64

Brotli-1.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (2.8 MB 查看哈希)

上传于 CPython 3.6m manylinux: glibc 2.5+ x86-64

Brotli-1.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl (2.7 MB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.5+ i686

Brotli-1.1.0-cp36-cp36m-macosx_10_9_x86_64.whl (446.0 kB 查看哈希值)

上传于 CPython 3.6m macOS 10.9+ x86-64

支持者