Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 13, 2017 10:59:38

ivn
Зарегистрирован: 2017-01-13
Сообщения: 91
Репутация: +  0  -
Профиль   Отправить e-mail  

Модуль для создания архива

Добрый день.
Подскажите модуль для создания архива.
Сжатие на первое время не важно.
Работаю в среде windows.
Т.е. мне нужно архивировать папку (в которой есть папки и файлы с кириллицой в именах). Просто создать архив.
Спасибо.

Офлайн

#2 Янв. 13, 2017 11:00:47

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Модуль для создания архива

zipfile



Офлайн

#3 Янв. 13, 2017 12:49:54

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Модуль для создания архива

shutil

Отредактировано 4kpt_IV (Янв. 13, 2017 12:51:09)

Офлайн

#4 Янв. 13, 2017 13:48:11

ivn
Зарегистрирован: 2017-01-13
Сообщения: 91
Репутация: +  0  -
Профиль   Отправить e-mail  

Модуль для создания архива

FishHook
zipfile
zipfile пробовал, c кодировкой нет проблем, но на определенном моменте вываливает исключение:
permission denied

не могу понять почему, причем если делаю копи-паст средствами windows все ок.
копирую данные больше 2Гб (это базы 1С)

вот кусочик кода:

 DIR_FOR_BACKUP = 'D:\\backup1c'
name_for_folder = datetime.datetime.now().strftime("%d%m%Y")
path = os.path.join(DIR_FOR_BACKUP, name_for_folder + '.zip')
z = zipfile.ZipFile(path, 'w')
for root, dirs, files in os.walk(DIR_OF_BACKUP):
    for file in files:
    z.write(os.path.join(root, file))
z.close()

с правами вроде все ок

Офлайн

#5 Янв. 13, 2017 13:49:59

ivn
Зарегистрирован: 2017-01-13
Сообщения: 91
Репутация: +  0  -
Профиль   Отправить e-mail  

Модуль для создания архива

4kpt_IV
shutil
можно пример,если возможно.
Спасибо.

Офлайн

#6 Янв. 13, 2017 14:16:54

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Модуль для создания архива

ivn
Распаковка или упаковка?

Офлайн

#7 Янв. 13, 2017 14:20:38

ivn
Зарегистрирован: 2017-01-13
Сообщения: 91
Репутация: +  0  -
Профиль   Отправить e-mail  

Модуль для создания архива

УПАКОВКА, по той ссылке видел пример, но мб поделитесь опытом.
пока к shutil склоняюсь, есть не много кода даже:

path_dst = os.path.join(DIR_FOR_BACKUP, name_for_folder)
path_src = DIR_OF_BACKUP
shutil.copytree(path_src, path_dst)

Отредактировано ivn (Янв. 13, 2017 14:21:55)

Офлайн

#8 Янв. 13, 2017 14:32:15

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Модуль для создания архива

 shutil.make_archive("path_to_archive/archive_name", "zip", base_dir="path_to_dir_need_archive")

Офлайн

#9 Янв. 14, 2017 00:29:59

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Модуль для создания архива

Я так понимаю что если размер файлов с данными больше 4Гб то формат должен быть не zip а zip64? Мне просто интересно shutil.make_archive будет работать?



Отредактировано doza_and (Янв. 14, 2017 00:33:03)

Офлайн

#10 Янв. 14, 2017 01:12:18

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9993
Репутация: +  857  -
Профиль   Отправить e-mail  

Модуль для создания архива

doza_and
Я так понимаю что если размер файлов с данными больше 4Гб то формат должен быть не zip а zip64?
python.org. shutil
Нет там zip64.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version