45 lines
638 B
Python
45 lines
638 B
Python
import gzip
|
|
import zlib
|
|
|
|
import brotli
|
|
import zstandard
|
|
|
|
|
|
def compress_with_brotli(
|
|
data: bytes,
|
|
level: int,
|
|
):
|
|
return brotli.compress(
|
|
data,
|
|
quality=level,
|
|
)
|
|
|
|
|
|
def compress_with_zstandard(
|
|
data: bytes,
|
|
level: int,
|
|
):
|
|
return zstandard.ZstdCompressor(
|
|
level=level,
|
|
).compress(data)
|
|
|
|
|
|
def compress_with_gzip(
|
|
data: bytes,
|
|
level: int,
|
|
):
|
|
return gzip.compress(
|
|
data,
|
|
compresslevel=level,
|
|
)
|
|
|
|
|
|
def compress_with_deflate(
|
|
data: bytes,
|
|
level: int,
|
|
):
|
|
return zlib.compress(
|
|
data,
|
|
level=level,
|
|
)
|