Paher
Фев. 16, 2010 22:36:43
Доброго времени суток!
Получаю environ и передаю его конструктору zipfile
MyZip = zipfile.ZipFile(environ)
(environ - file-like объект.
Конструктор выдает ошибку, так как environ не имеет метода seek(). Приложение достаточно нагруженное, хочется свести время работы к минимуму. Можно ли как-нибудь обойтись без сохранения environ в промежуточный файл и его дальнейшей передачи конструктору ZipFile?
Андрей Светлов
Фев. 16, 2010 23:09:16
zipfile должен глянуть в конец файла чтобы увидеть таблицу файлов.
Можно создать cStringIO из wsgi.input - но это замена шила на мыло. Вместо записи в файловую систему будете держать zip в памяти. На больших архивах может быть неприятно
Paher
Фев. 16, 2010 23:14:55
т.е. без промежуточного файла не обойтись. жаль. спасибо за разъяснения.
ZZZ
Фев. 17, 2010 00:22:30
Paher, а тебе обязательно zip?