Extracting file from zip archive in Python 2.6.1
btaylordesign at gmail.com
Wed Feb 4 04:56:32 CET 2009
On Feb 3, 9:15 pm, rdmur... at bitdance.com wrote:
> Quoth Brandon Taylor <btaylordes... at gmail.com>:
> > Ok, the first thing I needed to do was add:
> > from __future__ import with_statement at the beginning of my file
> > but:
> > with zip_file.open(zip_name + '/' + thumbnail_image) as source:
> > with open(os.path.join(thumbnail_path,
> > thumbnail_image), 'wb') as target:
> > shutil.copyfileobj(source, target)
> > Returns an error on the first line:
> > ZipExtFile instance has no attribute '__exit__'
> > Googling this error message is turning up nothing, and there's no
> > mention of the exception in the docs. Any thoughts?
> Yeah, that means the ZipExtFile object hasn't been extended to
> handle the context management protocol. It would be pretty
> simple to roll your own for it. Take a look at the contextlib
Cool. Thanks for the pointers. In the meantime, I just used extract
and os.rename to move the files where I need them, but I'll see if I
can save that extra step if possible.
More information about the Python-list