- for filename in os.listdir(ilustr_path):
- zip.write(os.path.join(ilustr_path, filename), os.path.join('OPS', filename))
+ if os.path.isdir(ilustr_path):
+ ilustr_elements = set(ilustr.get('src') for ilustr in document.edoc.findall('//ilustr'))
+ for i, filename in enumerate(os.listdir(ilustr_path)):
+ if filename not in ilustr_elements:
+ continue
+ file_path = os.path.join(ilustr_path, filename)
+ zip.write(file_path, os.path.join('OPS', filename))
+ image_id = 'image%s' % i
+ manifest.append(etree.fromstring(
+ '<item id="%s" href="%s" media-type="%s" />' % (image_id, filename, guess_type(file_path)[0])))