Я ищу способ распаковать вложенные zip-файлы в python. Например, рассмотрим следующую структуру (гипотетических имен для простоты):
...и т.д. Я пытаюсь получить доступ к текстовым файлам, которые находятся во втором почтовом индексе. Я, конечно, не хочу извлекать все, так как числа сдвига могут привести к краху компьютера (— в первом слое несколько сотен zip-файлов, а во втором — почти 10 000 (на zip-архив )).
Я играл с модулем 'zipfile' -. Я могу открыть 1-й уровень zip-файлов. Например.:
zipfile_obj = zipfile.ZipFile("/Folder/ZipfileA.zip")
next_layer_zip = zipfile_obj.open("ZipfileA1.zip")
Однако это возвращает экземпляр «ZipExtFile» (, а не экземпляр файла или zip-файла )-. и я не могу продолжить и открыть этот конкретный тип данных. Что я не могу этого сделать:
data = next_layer_zip.open(data.txt)
Однако я могу «прочитать» этот zip-файл с помощью:
next_layer_zip.read()
Но это совершенно бесполезно! (т.е. может читать только сжатые данные/goobledigook ).
У кого-нибудь есть идеи, как мне это сделать(безиспользуя ZipFile.extract )??
Я наткнулся на это,http://pypi.python.org/pypi/zip_open/-который выглядит именно так, как я хочу, но, похоже, это не работает для меня. (продолжайте получать «[Errno 2] Нет такого файла или каталога :» для файлов, которые я пытаюсь обработать, используя этот модуль ).
Любые идеи будут высоко оценены!! Заранее спасибо