Ecco una versione piu completa come gestire un Zip con python
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
import zipfile str1 = "Prima Stringa per il primo file" str2 = "Seconda Stringa per il secondo file" str3 = "Terza stringa per il terzo file" # Crea e scrive il primo file txt file_out = open("Zip1.txt", "w") file_out.write(str1) file_out.close() # Crea e scrive il secondo file txt file_out = open("Zip2.txt", "w") file_out.write(str2) file_out.close() archive_list = ["Zip1.txt", "Zip2.txt"] # salvare i file nel array archive_list in un formato zip zip_file_name = "zippo.zip" zip_out = zipfile.ZipFile(zip_file_name, "w") for fname in archive_list: zip_out.write(fname) zip_out.close() print '-'*41 # test if the file is a valid pkzip file if zipfile.is_zipfile(zip_file_name): print "%s è valido" % zip_file_name else: print "%s non è valido" % zip_file_name print '-'*41 # Apri File zippato zfile = zipfile.ZipFile( zip_file_name, "r" ) #Recupera le informazioni dal file zip zfile.printdir() print '-'*41 # ottenere ogni file archiviato ed elaborare i dati decompressi for information in zfile.infolist(): fname = information.filename # Decomprime i dati di ogni file data = zfile.read(fname) #Visualizza il contenuto dei file txt if fname.endswith(".txt"): print "Questi sono i contenuti di %s:" % fname print data #Salvare i dati decompressi in un nuovo file filename = 'unzipped_' + fname file_out = open(filename, "w") file_out.write(data) file_out.close() print "Nuovo file creato--> %s" % filename print '-'*41 |