我正在尝试使用此处找到的代码提取压缩文件夹。
def unzip(source_filename, dest_dir):
with zipfile.ZipFile(source_filename) as zf:
for member in zf.infolist():
words = member.filename.split('/')
path = dest_dir
for word in words[:-1]:
drive, word = os.path.splitdrive(word)
head, word = os.path.split(word)
if word in (os.curdir, os.pardir, ''): continue
path = os.path.join(path, word)
zf.extract(member, path)
但是当尝试提取具有目录结构的 wordpress.zip 时
WordPress/
-wp-内容/
---somefile.php
-wp-config.php
-index.php
在这种情况下,我只获取根文件夹或 wordpress/ 下面的文件夹中的文件。所以我得到了 wordpress/wp-content/somefile.php 但没有得到 wordpress/ 文件夹本身中的文件。
第一个要看的地方是文档 http://docs.python.org/2/library/zipfile#zipfile-objects:
ZipFile.extractall([path[, members[, pwd]]])
将其应用于您的情况,我会尝试:
def unzip(source_filename, dest_dir):
with zipfile.ZipFile(source_filename) as zf:
zf.extractall(dest_dir)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)