跳转到主要内容

libdeflate的Python封装。

项目描述

deflate API

这是一个非常薄的Python封装,由Eric Biggers的优秀libdeflate

目前,它处理以下内容:

使用非常基本的API压缩和解压缩gzip数据

import deflate
level = 6  # The default; may be 1-12 for libdeflate.
compressed = deflate.gzip_compress(b"hello world!" * 1000, level)
original = deflate.gzip_decompress(compressed)

压缩和解压缩原始DEFLATE或zlib数据

需要通过附加逻辑保留解压缩数据的原始大小。

import deflate
level = 6  # The default; may be 1-12 for libdeflate.
data = b"hello world!" * 1000
# DEFLATE
compressed = deflate.deflate_compress(data, level)
original = deflate.deflate_decompress(compressed, len(data))
# zlib
compressed = deflate.zlib_compress(data, level)
original = deflate.zlib_decompress(compressed, len(data))

CRC32计算

import deflate
crc32 = deflate.crc32(b"hello world! ")  # initial
crc32 = deflate.crc32(b"hello universe!", crc32)  # continued

Adler-32计算

import deflate
adler32 = deflate.adler32(b"hello world! ")  # initial
adler32 = deflate.adler32(b"hello universe!", adler32)  # continued

安装

pip安装deflate

默认情况下,从源代码构建时,deflate将编译和静态链接捆绑的libdeflate。要链接到系统安装的libdeflate,设置环境变量LIBDEFLATE_PREFIX

LIBDEFLATE_PREFIX=/opt/homebrew/Cellar/libdeflate/1.20 python -m build

测试

pip install -r requirements-dev.lock
python -m pytest

项目详情


下载文件

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

源代码分发

deflate-0.7.0.tar.gz (233.6 kB 查看哈希值)

上传时间 源代码

构建分发

deflate-0.7.0-cp312-cp312-win_amd64.whl (49.5 kB 查看哈希值)

上传时间 CPython 3.12 Windows x86-64

deflate-0.7.0-cp312-cp312-win32.whl (43.1 kB 查看哈希值)

上传时间 CPython 3.12 Windows x86

deflate-0.7.0-cp312-cp312-musllinux_1_1_x86_64.whl (50.8 kB 查看哈希值)

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

deflate-0.7.0-cp312-cp312-musllinux_1_1_i686.whl (53.4 kB 查看哈希值)

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

deflate-0.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (50.7 kB 查看哈希值)

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

deflate-0.7.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (53.5 kB 查看哈希值)

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

deflate-0.7.0-cp312-cp312-macosx_11_0_arm64.whl (39.2 kB 查看哈希值)

上传时间 CPython 3.12 macOS 11.0+ ARM64

deflate-0.7.0-cp312-cp312-macosx_10_9_x86_64.whl (54.2 kB 查看哈希值)

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

deflate-0.7.0-cp311-cp311-win_amd64.whl (49.5 kB 查看哈希值)

上传时间 CPython 3.11 Windows x86-64

deflate-0.7.0-cp311-cp311-win32.whl (43.1 kB 查看哈希值)

上传时间: CPython 3.11 Windows x86

deflate-0.7.0-cp311-cp311-musllinux_1_1_x86_64.whl (50.8 kB 查看哈希值)

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

deflate-0.7.0-cp311-cp311-musllinux_1_1_i686.whl (53.4 kB 查看哈希值)

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

deflate-0.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (50.7 kB 查看哈希值)

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

deflate-0.7.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (53.5 kB 查看哈希值)

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

deflate-0.7.0-cp311-cp311-macosx_11_0_arm64.whl (39.2 kB 查看哈希值)

上传时间: CPython 3.11 macOS 11.0+ ARM64

deflate-0.7.0-cp311-cp311-macosx_10_9_x86_64.whl (54.2 kB 查看哈希值)

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

deflate-0.7.0-cp310-cp310-win_amd64.whl (49.5 kB 查看哈希值)

上传时间: CPython 3.10 Windows x86-64

deflate-0.7.0-cp310-cp310-win32.whl (43.0 kB 查看哈希值)

上传时间: CPython 3.10 Windows x86

deflate-0.7.0-cp310-cp310-musllinux_1_1_x86_64.whl (50.8 kB 查看哈希值)

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

deflate-0.7.0-cp310-cp310-musllinux_1_1_i686.whl (53.4 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.1+ i686

deflate-0.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (50.7 kB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ x86-64

deflate-0.7.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (53.5 kB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

deflate-0.7.0-cp310-cp310-macosx_11_0_arm64.whl (39.2 kB 查看哈希值)

上传于 CPython 3.10 macOS 11.0+ ARM64

deflate-0.7.0-cp310-cp310-macosx_10_9_x86_64.whl (54.2 kB 查看哈希值)

上传于 CPython 3.10 macOS 10.9+ x86-64

deflate-0.7.0-cp39-cp39-win_amd64.whl (49.5 kB 查看哈希值)

上传于 CPython 3.9 Windows x86-64

deflate-0.7.0-cp39-cp39-win32.whl (43.0 kB 查看哈希值)

上传于 CPython 3.9 Windows x86

deflate-0.7.0-cp39-cp39-musllinux_1_1_x86_64.whl (50.8 kB 查看哈希值)

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

deflate-0.7.0-cp39-cp39-musllinux_1_1_i686.whl (53.4 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.1+ i686

deflate-0.7.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (50.7 kB 查看哈希值)

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

deflate-0.7.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (53.5 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

deflate-0.7.0-cp39-cp39-macosx_11_0_arm64.whl (39.2 kB 查看哈希值)

上传于 CPython 3.9 macOS 11.0+ ARM64

deflate-0.7.0-cp39-cp39-macosx_10_9_x86_64.whl (54.2 kB 查看哈希值)

上传于 CPython 3.9 macOS 10.9+ x86-64

deflate-0.7.0-cp38-cp38-win_amd64.whl (49.5 kB 查看哈希值)

上传于 CPython 3.8 Windows x86-64

deflate-0.7.0-cp38-cp38-win32.whl (43.0 kB 查看哈希值)

上传于 CPython 3.8 Windows x86

deflate-0.7.0-cp38-cp38-musllinux_1_1_x86_64.whl (50.8 kB 查看哈希值)

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

deflate-0.7.0-cp38-cp38-musllinux_1_1_i686.whl (53.4 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.1+ i686

deflate-0.7.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (50.7 kB 查看哈希值)

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

deflate-0.7.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (53.5 kB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

deflate-0.7.0-cp38-cp38-macosx_11_0_arm64.whl (39.2 kB 查看哈希值)

上传于 CPython 3.8 macOS 11.0+ ARM64

deflate-0.7.0-cp38-cp38-macosx_10_9_x86_64.whl (54.2 kB 查看哈希值)

上传于 CPython 3.8 macOS 10.9+ x86-64

由以下支持