Descompactando parte de um arquivo .gz usando python

Então aqui está o problema. Eu tenho o arquivo sample.gz que tem aproximadamente 60KB de tamanho. Eu quero descomprimir os primeiros 2000 bytes deste arquivo. Eu estou correndo em CRC check falhou erro, eu acho que porque o campo CRC gzip aparece no final do arquivo, e requer o arquivo gzipado inteiro para descomprimir. Existe alguma forma de contornar isto? Eu não me importo com a verificação do CRC. Mesmo se eu não conseguir descomprimir por causa de CRC ruim, tudo bem. Existe uma maneira de contornar isso e descompactar arquivos .gz parciais?

O código que tenho até agora é

import gzip
import time
import StringIO

file = open('sample.gz', 'rb')
mybuf = MyBuffer(file)
mybuf = StringIO.StringIO(file.read(2000))
f = gzip.GzipFile(fileobj=mybuf)
data = f.read()
print data

O erro encontrado é

File "gunzip.py", line 27, in ?
    data = f.read()
File "/usr/local/lib/python2.4/gzip.py", line 218, in read
  self._read(readsize)
File "/usr/local/lib/python2.4/gzip.py", line 273, in _read
  self._read_eof()
File "/usr/local/lib/python2.4/gzip.py", line 309, in _read_eof
  raise IOError, "CRC check failed"
IOError: CRC check failed

Também existe alguma maneira de usar o módulo zlib para fazer isso e ignorar os cabeçalhos do gzip?

questionAnswers(4)

yourAnswerToTheQuestion