Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 15, 2009 20:19:09

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

работа с zipfile

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

И может есть модуль более высокого уровня для работы с зип-файлами? Чтобы архив не создавать каждый раз заново.



Офлайн

#2 Сен. 15, 2009 20:32:53

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

работа с zipfile

ага os.walk(), только не совсем понятно что она выдаёт.



Офлайн

#3 Сен. 16, 2009 00:39:12

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

работа с zipfile

Куда уж понятней?

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).

Офлайн

#4 Сен. 18, 2009 00:19:09

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

работа с zipfile

Ferroman
Куда уж понятней?
Если знать буржуинский язык то да :)
С этим разобрался уже по примерам использования из «Python в системном администрировании UNIX и Linux (Гифт Джонс) »

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



Отредактировано (Сен. 18, 2009 00:27:15)

Офлайн

#5 Сен. 18, 2009 02:01:02

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

работа с zipfile

knkd
Хм. А можно файл где есть такая проблема?
Сдаётся мне что проблема в путях, а не в файле.

Офлайн

#6 Сен. 18, 2009 17:27:44

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

работа с zipfile

Ferroman
Хм. А можно файл где есть такая проблема?
Любой файл, в том числе и пустой. Аналогично и в Вин-ХРСП3 и в KUbunta9.04.
Вот пустой файл :)

Я почитал спецификацию ODF - там особые требования к расположению в архиве файла «mimetype» - может из-за этого.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version