簡體   English   中英

使用 python 提取 zip 文件

[英]Extracting zip files using python

我正在嘗試將所有 zip 文件放在“已下載”的特定目錄名稱中,並將其所有內容提取到名為“已提取”的目錄中。

我不知道為什么,在我只迭代現有文件名之后,我收到一個錯誤,即沒有這樣的文件......

allFilesList = os.listdir(os.getcwd()+"/downloaded")
print allFilesList #verify - correct expected list
from zipfile import ZipFile
os.chdir(os.getcwd()+"/extracted/")
print os.getcwd() #verify - correct expected dir

for fileName in allFilesList: 
    print fileName
    with ZipFile(fileName, 'r') as zipFileObject:
        if os.path.exists(fileName):
            print "Skipping extracting " + fileName
            continue
        zipFileObject.extractall(pwd='hello')                   
        print "Saving extracted file to extracted/",fileName
print "all files has been successfully extracted"

錯誤信息:

File "program.py", line 77, in <module>
with ZipFile(fileName, 'r') as zipFileObject:
File "/usr/lib/python2.7/zipfile.py", line 779, in __init__
    self.fp = open(file, modeDict[mode])
IOError: [Errno 2] No such file or directory: 'zipFile1.zip'

您從一個目錄獲取文件名列表,然后更改為另一個目錄,並嘗試從該目錄中提取可能不存在的文件:

allFilesList = os.listdir(os.getcwd()+"/downloaded")
# ...
os.chdir(os.getcwd()+"/extracted/")
# ...
    with ZipFile(fileName, 'r') as zipFileObject:

如果您將該文件ZipFile命令更改為以下內容:

    with ZipFile(os.path.join("..", "downloaded", fileName), 'r') as zipFileObject:

您應該能夠在找到它的目錄中打開該文件。

暫無
暫無

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

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