I am using Python 2.7 for Windows 7 (64 bit). When I try to unzip a zip file using the ZipFile module, I get the following error: -
Traceback (most recent call last): File "unzip.py", line 8, in <module> z.extract(name) File "C:\Python27\lib\zipfile.py", line 950, in extract return self._extract_member(member, path, pwd) File "C:\Python27\lib\zipfile.py", line 993, in _extract_member source = self.open(member, pwd=pwd) File "C:\Python27\lib\zipfile.py", line 897, in open raise BadZipfile, "Bad magic number for file header" zipfile.BadZipfile: Bad magic number for file header
WinRAR can extract the file I'm trying to extract, just fine. Here is the code I used to extract the files from myzip.zip
from zipfile import ZipFile z = ZipFile('myzip.zip') //myzip.zip contains just one file, a password protected pdf for name in z.namelist(): z.extract(name)
This code works great for many other zip files that I created using WinRAR, but myzip.zip
I tried commenting out the following lines in Python27\Lib\zipfile.py : -
if fheader[0:4] != stringFileHeader: raise BadZipfile, "Bad magic number for file header"
But it did not help. By running my code with this, I get a few dumps in my shell.
haltTm
source share