如何在 python 的不同目录中提取 zip 文件?
How to extract zip file in different directory in python?
我正在编写一个 python (2.7) 脚本,它使用加密密码从 zip 文件中提取文件。为此,我使用 ZipFile 模块将文件提取到不同的目录中。我已经遵循了这里提到的所有答案。如何将 zip 文件中的所有文件提取到不同的目录中?
我试图将所有文件提取到不同的目录中,但结果是:它正在目标目录中创建目录。
try:
with ZipFile(os.path.join(app.config['UPLOAD_FOLDER'], filename)) as zf:
zf.extractall('/Users/dipak.das/desktop/docs/',None,b'12345')
except RuntimeError as e:
print e
我预计上述脚本的输出应该提取路径 directories.But 内的所有文件我的代码正在文档目录“/Users/dipak.das/desktop/docs/”内创建一个目录并提取所有文件。
假设您希望提取的文件没有子目录...
完全未经测试,但也许可以试试
import os, shutil
destdir = '/Users/dipak.das/desktop/docs/'
with ZipFile(os.path.join(app.config['UPLOAD_FOLDER'], filename)) as zf:
for name in zf.namelist():
source = zf.open(name, 'r', b'12345')
destpath = os.path.join(destdir, os.path.basename(name))
target = open(destpath, 'w')
shutil.copyfileobj(source, target)
target.close()
我正在编写一个 python (2.7) 脚本,它使用加密密码从 zip 文件中提取文件。为此,我使用 ZipFile 模块将文件提取到不同的目录中。我已经遵循了这里提到的所有答案。如何将 zip 文件中的所有文件提取到不同的目录中?
我试图将所有文件提取到不同的目录中,但结果是:它正在目标目录中创建目录。
try:
with ZipFile(os.path.join(app.config['UPLOAD_FOLDER'], filename)) as zf:
zf.extractall('/Users/dipak.das/desktop/docs/',None,b'12345')
except RuntimeError as e:
print e
我预计上述脚本的输出应该提取路径 directories.But 内的所有文件我的代码正在文档目录“/Users/dipak.das/desktop/docs/”内创建一个目录并提取所有文件。
假设您希望提取的文件没有子目录...
完全未经测试,但也许可以试试
import os, shutil
destdir = '/Users/dipak.das/desktop/docs/'
with ZipFile(os.path.join(app.config['UPLOAD_FOLDER'], filename)) as zf:
for name in zf.namelist():
source = zf.open(name, 'r', b'12345')
destpath = os.path.join(destdir, os.path.basename(name))
target = open(destpath, 'w')
shutil.copyfileobj(source, target)
target.close()