# test corrupted GZIP data import gzip import StringIO uncompressed = "This is a test" fileobj = StringIO.StringIO() gzipobj = gzip.GzipFile("test.gz", 'wb', 9, fileobj) gzipobj.write(uncompressed) gzipobj.close() # corrupt the .gz data: remove the last 2 bytes compressed = fileobj.getvalue()[:-2] # now uncompress again fileobj = StringIO.StringIO(compressed) print gzip.GzipFile('', 'rb', 9, fileobj).read()