Найти - Пользователи
Полная версия: работа с zipfile
Начало » Python для экспертов » работа с zipfile
1
knkd
Я так понял что с помощью zipfile в архив можно файлы вставлять только по-одному поимённо.
Всвязи с этим вопрос:
А есть ли в стандартной библиотеке средства для получения всего дерева из определённого каталога, или только собирать рекурсивно руцями?

И может есть модуль более высокого уровня для работы с зип-файлами? Чтобы архив не создавать каждый раз заново.
knkd
ага os.walk(), только не совсем понятно что она выдаёт.
Ferroman
Куда уж понятней?
For each directory in the tree rooted at directory top (including top itself), it yields a 3-tuple (dirpath, dirnames, filenames).

dirpath is a string, the path to the directory. dirnames is a list of the names of the subdirectories in dirpath (excluding ‘.’ and ‘..’). filenames is a list of the names of the non-directory files in dirpath. Note that the names in the lists contain no path components. To get a full path (which begins with top) to a file or directory in dirpath, do os.path.join(dirpath, name).
knkd
Ferroman
Куда уж понятней?
Если знать буржуинский язык то да :)
С этим разобрался уже по примерам использования из «Python в системном администрировании UNIX и Linux (Гифт Джонс) »

Кстати этот споб почему-то на файлах ОпенОфиса сбой даёт… (оно мне впринципе не нужно, просто заметил)
Если распаковать архиватором то обратно запаковывает, файл после этого корректный.
А само распаковывать отказывается IOError: Permission denied: u'odt\\Configurations2\\statusbar
Если вытащить из архива список файлов -> выбрать каталоги -> создать дерево каталогов в точке назначения (os.makedirs) и только потом скопировать файлы то таких ошибок не возникает.
Ferroman
knkd
Хм. А можно файл где есть такая проблема?
Сдаётся мне что проблема в путях, а не в файле.
knkd
Ferroman
Хм. А можно файл где есть такая проблема?
Любой файл, в том числе и пустой. Аналогично и в Вин-ХРСП3 и в KUbunta9.04.
Вот пустой файл :)

Я почитал спецификацию ODF - там особые требования к расположению в архиве файла «mimetype» - может из-за этого.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB