У меня есть файл Gzip, который имеет несколько блоков blocks.Every начинается сРаспаковка GZIP файл, который Contine несколько блоков
1F 8B 08
И заканчивается
00 00 FF FF
Я пытался распаковать файл, используя 7- Zip и gzip в linux, но я всегда получаю сообщение о том, что файл недействителен. Так что я написал этот питон скрипт
import zlib
CHUNKSIZE=1
f=open("file.gz","rb")
buffer=f.read(CHUNKSIZE)
data=""
r=CHUNKSIZE
d = zlib.decompressobj(16+zlib.MAX_WBITS)
while buffer:
outstr = d.decompress(buffer)
print(r)
buffer=f.read(CHUNKSIZE)
r=r+CHUNKSIZE
outstr = d.flush()
У меня есть уведомление, что, когда он дойдет до заголовка второго блока
00 00 00 FF FF 1F 8B 08
в точке между FF и 1F возвращения скрипт
zlib.error: Error -3 while decompressing data: invalid block type
Я сделал размер куска равным 1, чтобы я точно знал, где проблема. Я знаю, что проблема не в файле, потому что у меня есть несколько файлов, построенных одинаково, и они показывают точно такую же ошибку.