All pastes #1517430 Raw Edit

Zipando arquivos com python

public python v1 · immutable
#1517430 ·published 2009-08-04 01:28 UTC
rendered paste body
#-*- coding:utf-8 -*-import os.path as pathimport sysimport zipfileimport getoptdef help():    print """Utilização:    python zip.py arq arq2...    Argumentos:    -h: mostra a ajuda"""    sys.exit(0)def main(argv):    "método que executa as funcionalidades do script"        # -h -> não exige argumento    opts, args = getopt.gnu_getopt(argv, "h")        # garante que o arquivo de entrada é informado    if len(args)==0:         print "Informe pelo menos um arquivo de entrada."        sys.exit(0)        # interpretando os parâmetros passados    for opt, value in opts:        if opt=="-h": help()        for filename in args:                if not path.isfile(filename):             print "'%s' não é um arquivo. Ignorado." % filename            continue                # um arquivo zipado não precisa ser zipado novamente        if filename.endswith('.zip' ):             print "Nada a fazer com '%s'. Ignorado." % filename            continue            target = path.splitext(filename)[0]+".zip"        # criando o arquivo zip        fzip = zipfile.ZipFile(target, 'w', zipfile.ZIP_DEFLATED)        fzip.write(filename)        fzip.close()        print "'%s' criado." % targetif __name__=="__main__":    # o primeiro argumento de argv e o nome do script sendo     # executado. Informação da qual não precisamos    main(sys.argv[1:])