Zipping files/zipfile module

Ant antroy at gmail.com
Wed Aug 2 09:32:23 EDT 2006


Enabling directory recursion:

> from os import listdir, mkdir
> from os.path import join, basename, isfile
> from zipfile import ZipFile
>
> def zip_dir(path, output_path, include_hidden=True):
>     try:
>         mkdir(output_path)
>     except OSError, e:
>         if e.errno == 17: # Path exists
>             pass
>     zip_file = ZipFile(join(output_path, 'temp.zip'), 'w')

       for root, dirs, files in os.walk(dir):
           for f in files:
                fp = path.join(root, f)
                zip_file.write(fp, fp[len(dir):])  # Write to zip as a
path relative to original dir.
>     zip_file.close()




More information about the Python-list mailing list