[Python] To unzip a file

Discussão em 'Python' iniciado por Stack, Fevereiro 25, 2025.

  1. Stack

    Stack Membro Participativo

    I want to unzip a file of type *.sec.gz which is a zipfile. But i'm getting badfile. Can someone guide me to resolve this?

    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')


    Output:

    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

    Continue reading...

Compartilhe esta Página