Я пытаюсь проанализировать html для всех его тегов img, загрузить все изображения, на которые указывает src, а затем добавить эти файлы в zip-файл. Я бы предпочел делать все это в памяти, так как могу гарантировать, что изображений будет не так много.
Предположим, что переменная images уже заполнена при анализе html. Мне нужна помощь, чтобы загрузить изображения в zip-файл.
from zipfile import ZipFile
from StringIO import StringIO
from urllib2 import urlopen
s = StringIO()
zip_file = ZipFile(s, 'w')
try:
for image in images:
internet_image = urlopen(image)
zip_file.writestr('some-image.jpg', internet_image.fp.read())
# it is not obvious why I have to use writestr() instead of write()
finally:
zip_file.close()