【发布时间】:2022-05-02 22:43:56
【问题描述】:
我正在使用以下代码:
import zipfile
import urllib
link = "http://www.dummypage.com/dummyfile.zip"
file_handle = urllib.urlopen(link)
zip_file_object = zipfile.ZipFile(file_handle, 'r')
我在执行时收到以下错误。请帮忙。
Traceback (most recent call last):
File "fcc.py", line 34, in <module>
zip_file_object = zipfile.ZipFile(file_handle)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 770, in __init__
self._RealGetContents()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 807, in _RealGetContents
endrec = _EndRecData(fp)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 208, in _EndRecData
fpin.seek(0, 2)
AttributeError: addinfourl instance has no attribute 'seek'
【问题讨论】:
-
ZipFile需要具有seek()函数的类文件对象,而urlopen不创建类文件对象。使用io.ByteIO在内存中创建类文件对象,并将来自互联网的数据放入该对象中。
标签: python python-2.7 python-zipfile