/ / Python 3.4: zlib, deflate e ditado compartilhado - python, zlib

Python 3.4: zlib, deflate e ditado compartilhado - python, zlib

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 № 1

Você 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.