一个文件夹中有1000多个zip文件。所有拉链都具有相同的结构。目的是从所有zip中抓取A.zip/folder/meta.xls并将其存储为A.xls,B.xls,C.xls .....等。
我是python的新手,所以我尝试构建下面提到的代码。但是,它只是创建meta / file / meta.xls。
from zipfile import ZipFile
import os
files = os.listdir()
for file in files:
with ZipFile(file,'r') as zip:
zip.extract('meta/meta.xls','meta/file')
我认为我在'zip.extract('meta / meta.xls','meta / file')中犯错了,因为我得到的唯一meta.xls是列表'files'中的最后一个项目
答案 0 :(得分:1)
您的代码只是覆盖文件,因为它们具有相同的名称。您需要重命名每个文件。
from zipfile import ZipFile
import os
files = os.listdir()
for file in files:
with ZipFile(file,'r') as zip:
zip.extract('meta/meta.xls','meta/file')
os.rename('meta/file/meta.xls', file.split('.')[0] + '.xls')
您现在应该有很多不同的xls文件,每个文件都称为zip文件,可以从中提取内容。