Ответ 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. Но это основы.