Alguma idéia de como corrigir o código a seguir (Python 3.4.3):
import zlib
hello = b"hello"
co = zlib.compressobj(wbits=-zlib.MAX_WBITS, zdict=hello)
data = co.compress(hello) + co.flush()
do = zlib.decompressobj(wbits=-zlib.MAX_WBITS, zdict=hello)
data = do.decompress(data)
print(data)
Para mim com
zlib.error: Error -3 while decompressing data: invalid distance too far back
O que estou tentando fazer é descompactar o esvaziamento que foi compactado com o dicionário compartilhado.
Respostas:
0 para resposta № 1Você não pode usar wbits negativos com um dicionário. As wbits negativas se livram do cabeçalho e do trailer zlib, mas o cabeçalho zlib é como a descompressão sabe usar um dicionário.
Apenas se livre das opções do wbits.