Decomprime il flusso di byte utilizzando il modulo gzip incorporato.
Se avete problemi, non mostrano il codice minimo esatto che è stato utilizzato, il messaggio di errore esatto e traceback, insieme con il risultato di print repr(your_byte_stream[:100])
Ulteriori informazioni
1. Per una spiegazione della confusione di gzip/zlib/deflate, leggere la sezione "Altri usi" di this Wikipedia article.
2. Può essere più facile da utilizzare il modulo zlib che il modulo gzip se si dispone di una stringa piuttosto che un file. Purtroppo il Python docs sono incompleti/errato:
""" zlib.decompress (stringa [, wbits [, bufsize]]) ... Il valore assoluto della wbits è il logaritmo in base due dimensioni del buffer di cronologia (la "dimensione della finestra") utilizzato durante la compressione dei dati. Il suo valore assoluto dovrebbe essere compreso tra 8 e 15 per le versioni più recenti della libreria zlib, valori più grandi risultanti in una compressione migliore a spese di un maggiore utilizzo della memoria. 15. Quando wbits è negativo, l'intestazione gzip standard viene soppressa, si tratta di una funzionalità non documentata della libreria zlib, utilizzata per la compatibilità con il formato del file di compressione di unzip "" "
In primo luogo, 8 < = log2_window_size < = 15, con il significato sopra indicato. Quindi quello che dovrebbe essere un argomento distinto è in cima:
arg == log2_window_size significa che la stringa è in formato zlib (RFC 1950, ciò che l'HTTP 1.1 RFC 2616 chiama confusionmente "deflate").
arg == -log2_window_size significa assumere stringa è in formato deflate (RFC 1951; ciò che le persone che non hanno letto il HTTP 1.1 RFC attentamente effettivamente attuato)
arg == 16 + log_2_window_size significa assumere corda è formato gzip (RFC 1952). Quindi è possibile utilizzare 31.
Le informazioni di cui sopra sono documentate nello zlib C library manual ... Ctrl-F ricerca windowBits
.
fonte
2010-04-23 00:38:44
mi hai salvato la vita) – Oduvan
potresti per favore commentare quale è il secondo argomento per decomprimere? E perché è così ... beh ... strano? – DataGreed
@DataGreed, il secondo argomento riguarda la dimensione della finestra, fare riferimento alla risposta di John Machin riportata di seguito. – YOU