簡體   English   中英

如何在 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

我希望上述腳本的 output 應該提取路徑目錄中的所有文件。但是我的代碼是在 docs 目錄“/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()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM