Programmazione Python > Base

Creazione di un file archivio (.zip)

(1/2) > >>

akus85:
In questi giorni ho provato a creare un file zip da python devo dire che ci sono riuscito utilizzando la libreria distutils.archive_util anche se non ho proprio ottenuto il risultato aspettato  :confused:

In pratica ottengo un file .zip con pero per ogni cartella contenuta nel path crea una cartella,quindi se ho un path di questo tipo: "path=C:\Documents and Settings\Alberto\Desktop\Palmare" nel mio file ho una cartella Documents and Settings dentro ho la cartella Alberto dentro ancora Desktop e cosi via....

Io invece voglio creare un file .zip che parta direttamente dalla cartella Palmare...come posso fare ?  :question:

Qua c'è il programma che ho scritto:

##################################
# Nome_programma: Archiviatore.py 
# Autore: akus85                             
##################################



import distutils.archive_util
import time

def Archivia(NomeFile,Sorgente):
  distutils.archive_util.make_zipfile(NomeFile,Sorgente)
  print "OK"


Tempo=time.localtime()
NomeFile="Backup_"+str(Tempo[2])+"-"+str(Tempo[1])+"-"+str(Tempo[0])+"_"+str(Tempo[3])+"-"+str(Tempo[4])+"-"+str(Tempo[5])
Sorgente="C:\Documents and Settings\Alberto\Desktop\Palmare"

Archivia(NomeFile,Sorgente)

Markon:
Una curiosità: perchè non hai usato la libreria ZipFile ?

MiPnamic:
import os
from zipfile import ZipFile

Sorgente="C:\Documents and Settings\Alberto\Desktop\Palmare"
os.chdir(Sorgente)

files = os.listdir('.')

f = ZipFile('nomefile.zip', mode='w')

for i in files:
    f.write(i)
f.close()

# In questo modo cambia la directory di lavoro nella directory "Sorgente"
# e mette in nomefile.zip tutto quello che è presente nella lista files ^_^

akus85:

--- Citazione da: Markon ---Una curiosità: perchè non hai usato la libreria ZipFile ?

--- Termina citazione ---
Non l'avevo usata perchè ottenevo la stessa cosa di distutils.archive_util  :embarrassed:

@ZioMip:
 Grazie per il codice..!!!  ;)

MiPnamic:
grazie di cosa? ^^ siamo qui per aiutarci ^^

Navigazione

[0] Indice dei post

[#] Pagina successiva

Vai alla versione completa