home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- __license__ = 'GPL v3'
- __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net'
- __docformat__ = 'restructuredtext en'
- import re
- from calibre.utils import zipfile
-
- def update(pathtozip, patterns, filepaths, names, compression = zipfile.ZIP_DEFLATED, verbose = True):
- z = zipfile.ZipFile(pathtozip, mode = 'a')
- for name in z.namelist():
- for pat, fname, new_name in zip(patterns, filepaths, names):
- if pat.search(name):
- if verbose:
- print 'Updating %s with %s' % (name, fname)
-
- if new_name is None:
- z.replace(fname, arcname = name, compress_type = compression)
- else:
- z.delete(name)
- z.write(fname, new_name, compress_type = compression)
- break
- continue
-
-
- z.close()
-
-
- def extract(filename, dir):
- zf = zipfile.ZipFile(filename)
- zf.extractall(dir)
-
-
- def extract_member(filename, match = re.compile('\\.(jpg|jpeg|gif|png)\\s*$', re.I)):
- zf = zipfile.ZipFile(filename)
- names = zf.namelist()
- for name in names:
- if match.search(name):
- return (name, zf.read(name))
-
-
-