zlib gzip декомпрессионный питон

мой вопрос можно извлечь сжатые файлы (gzip deflate) сжатие http с php или python или bash?

я проверяю это

import zlib

str_object1 = open('test.png', 'rb').read()
str_object2 = zlib.decompress(str_object1)
f = open('my_recovered_log_file', 'wb')
f.write(str_object2)
f.close()

и получить этот результат

File "testgz", line 4, in <module>
str_object2 = zlib.decompress(str_object1)
zlib.error: Error -3 while decompressing data: incorrect header check

ти

0

Решение

Хотя zlib использует те же механизмы для сжатия / распаковки, что и gzip, они используют разные заголовки в качестве контрольных сумм.

Zlib Python может распаковывать сжатые файлы, но Python предоставляет удобную библиотеку gzip для этого.

1

Другие решения

Формат файла PNG включает в себя один или несколько потоков zlib. Вам нужно будет декодировать формат, чтобы найти их, после чего вы могли бы использовать zlib.decompress распаковать их. Вы не можете использовать zlib для распаковки .png файла с самого начала.

Увидеть Спецификация PNG для формата.

Ваш вопрос кажется запутанным, так как вы привели пример попытки декодировать файл .png, но вы спрашиваете о «(gzip deflate) http сжатии», что совершенно другое. Да, вы можете использовать zlib.decompress на тех, с надлежащим использованием wbits параметр.

1

По вопросам рекламы [email protected]