Re: simple UnZip



Le Wednesday 02 July 2008 15:39:51 noydb, vous avez écrit :
Can someone help me with this script, which I found posted elsewhere?
I'm trying to figure out what is going on here so that I can alter it
for my needs, but the lack of descriptive names is making it
difficult. And, the script doesn't quite do anything worthwhile -- it
unzips one file from a zipfile, not all files in a zipfile.

***
import zipfile, os, sys, glob

os.chdir("C:\\Temp")
zips = glob.glob('*.zip')

for fzip in zips:
if zipfile.is_zipfile(fzip):
print fzip," is a zip"
z = zipfile.ZipFile(fzip,'r')
lstName = z.namelist()
sHgt = lstName[0]
print "Unpacking",sHgt
hgt = z.read(sHgt)
fHgt = open(sHgt,'wb')
fHgt.write(hgt)
# fHgt.flush
fHgt.close
print "Finished"
***

I changed it somewhat to
&&&
import zipfile, os, sys

event_zip = ("C:\\Temp\\data4event.zip")

z = zipfile.ZipFile(event_zip, 'r')

zList = z.namelist()

for zItem in zList:
print "Unpacking",zItem
zRead = z.read(zItem)
z1File = open(zItem,'wb')
z1File.write(zRead)
z1File.close

namelist() returns a list of relative file names, so you can just put them
anywhere you want with:

zlFile = open(os.path.join(DESTDIR, zItem), 'wb')

or change the current directory, but the first way should be preferred.

print "Finished"
&&&

This works, but I want to be able to specify a different output
location.


--
Cédric Lucantis
.



Relevant Pages

  • simple UnZip
    ... Can someone help me with this script, ... unzips one file from a zipfile, not all files in a zipfile. ... for fzip in zips: ... print fzip," is a zip" ...
    (comp.lang.python)
  • Re: simple UnZip
    ... unzips one file from a zipfile, not all files in a zipfile. ... import zipfile, os, sys, glob ... for fzip in zips: ...
    (comp.lang.python)
  • Re: Zippping a directory recursively from Python script on Windows
    ... > but here's a simple example of using ZipFile for creating zips of ... > compressing those most likely, but the basics are there. ...
    (comp.lang.python)