У меня есть файл, который я хочу прочитать, который сам заархивирован в zip-архиве. Например, parent.zip содержит child.zip, который содержит child.txt. У меня проблемы с чтением child.zip. Кто-нибудь может исправить мой код?
Я предполагаю, что мне нужно создать child.zip как подобный файлу объект и затем открыть его со вторым экземпляром zipfile, но, будучи новичком в python, мой zipfile.ZipFile(zfile.open(name)) глупо. Это поднимает zipfile.BadZipfile: "Файл не является zip файлом" на (независимо проверенном) child.zip
import zipfile
with zipfile.ZipFile("parent.zip", "r") as zfile:
for name in zfile.namelist():
if re.search(r'\.zip$', name) is not None:
# We have a zip within a zip
with **zipfile.ZipFile(zfile.open(name))** as zfile2:
for name2 in zfile2.namelist():
# Now we can extract
logging.info( "Found internal internal file: " + name2)
print "Processing code goes here"