簡體   English   中英

如何使用 Python 解碼編碼的 zipfile?

[英]How to decode an encoded zipfile using Python?

我有一個 base64 編碼的 zip 文件。 我能夠轉換該 zip 文件,然后使用 Windows 命令行提取其內容。 我一直在嘗試用 Python 做同樣的事情,但沒有成功。 請你幫助我好嗎? 當我運行以下代碼時:

import base64
import codecs
import zlib
import io, zipfile, json, pprint

d = open("data.txt", "rb").read()
#dd = base64.decodestring(d)
#print(dd)
z = zipfile.ZipFile(io.BytesIO(d))
unpack = zlib.decompress(d)

我收到以下錯誤:

raise BadZipFile("File is not a zip file") zipfile.BadZipFile: File is not a zip file

data.txt 文件包含 base64 字符串:在此處輸入圖片說明

我的一個朋友幫助了我。 我認為在這里發布解決方案可能會幫助很多像我這樣的初學者:

def convert(d,name, ex):
    with open('output_file.zip', 'wb') as result:
        result.write(base64.b64decode(d))
    zip_ref = zipfile.ZipFile("output_file.zip", 'r')
    zip_ref.extractall("extracted_file")
    zip_ref.close()
        
    for filename in os.listdir("extracted_file"):
        extracted_file = "extracted_file/"+filename
        shutil.move(extracted_file, "images/"+name+ex)

暫無
暫無

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

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