2014-11-05 257 views
0

我想解压缩* .sec.gz这是一个zip文件的文件。但我事先得到BADFILE .....有人能指导来解决这个.....文件存在的文件夹中类型的* .SEC ........感谢解压缩文件

import zipfile 
def unzip(path): 
    zfile = zipfile.ZipFile(path) 
    for name in zfile.namelist(): 
     (dirname, filename) = os.path.split(name) 
     if filename == '': 
      # directory 
      if not os.path.exists(dirname): 
       os.mkdir(dirname) 
     else: 
      # file 
      fd = open(name, 'w') 
      fd.write(zfile.read(name)) 
      fd.close() 
    zfile.close() 

k=unzip('C://test//08October2014//DATA_INTV_NEW//Oct0814//1.sec.gz') 

输出:

BadZipfile        Traceback (most recent call last) 
<ipython-input-7-5134b63e752e> in <module>() 
    27  zfile.close() 
    28 
---> 29 k=unzip('C://test//08October2014//DATA_INTV_NEW//Oct0814//1.sec.gz') 

<ipython-input-7-5134b63e752e> in unzip(path) 
    13 
    14 def unzip(path): 
---> 15  zfile = zipfile.ZipFile(path) 
    16  for name in zfile.namelist(): 
    17   (dirname, filename) = os.path.split(name) 

C:\Python27\Lib\zipfile.pyc in __init__(self, file, mode, compression, allowZip64) 
    768   try: 
    769    if key == 'r': 
--> 770     self._RealGetContents() 
    771    elif key == 'w': 
    772     # set the modified flag so central directory gets written 

C:\Python27\Lib\zipfile.pyc in _RealGetContents(self) 
    809    raise BadZipfile("File is not a zip file") 
    810   if not endrec: 
--> 811    raise BadZipfile, "File is not a zip file" 
    812   if self.debug > 1: 
    813    print endrec 

BadZipfile: File is not a zip file 
+0

http://stackoverflow.com/questions/20762094/how-are-zlib-gzip-and-zip-related-what-are-is-common-and-how-are-they-differen – 2014-11-05 09:38:50

回答

3

错误消息是完全准确的:这不是一个zip文件。这是一个gzip文件,完全不同。你应该使用gzip module

+0

Thanks for ur指导,能够使用gzip.open()检索 – 2014-11-05 12:15:49