下面是我的zipfile的内容
{'key1': {'subkey0': 'value 0', 'subkey1': 'value 1'},
'key2': {'subkey0': 'value 2', 'subkey1': 'value 3'}}
如何提取xyz.zip文件夹的内容? 经过一些试验和错误,我偶然能够提取内容,通过一些类似的代码如下:
import pandas, zipfile, requests, lxml
from io import BytesIO
r = requests.get('someurl')
z = zipfile.ZipFile(BytesIO(r.contents))
z.namelist()
Out[42]:
['abc.csv',
xyz.zip']
但现在这似乎不起作用,我不确定几天后我做了什么,当它确实有效。我得到的错误信息是
zz = zipfile.ZipFile(z.namelist()[1])
感谢任何帮助或指导。
答案 0 :(得分:1)
只需ZipFile.open
内部zip,然后使用它来构建新的ZipFile
对象:
with zipfile.ZipFile(BytesIO(r.contents)) as z:
with z.open(z.namelist()[1]) as inner_zip:
with zipfile.ZipFile(inner_zip) as inner:
print(inner.namelist())