Python script, чтобы проверить, поврежден ли zip файл

Как проверить, поврежден ли zip файл или нет.... например, у меня есть zip файл с 10-jpg-изображениями, которые я могу извлечь, например, из 8 изображений два изображения в zip повреждены, и я я не могу извлечь, есть ли способ проверить это в python script

Ответ 1

Этот код либо выдает исключение (если zip файл действительно плохой, либо если он не является zip файлом), либо показывает первый плохой файл в zip файле.

import os
import sys
import zipfile

if __name__ == "__main__":
    args = sys.argv[1:]


    print "Testing zip file: %s" % args[0]

    the_zip_file = zipfile.ZipFile(args[0])
    ret = the_zip_file.testzip()

    if ret is not None:
        print "First bad file in zip: %s" % ret
        sys.exit(1)
    else:
        print "Zip file is good."
        sys.exit(0)

Вы должны, конечно, вложить этот материал в правильные пункты try/except. Но это основы.