associação pythonbrasil[11] django zope/plone planet Início Logado como (Entrar)

Diferenças para "RenameFiles"

Diferenças entre as versões de 1 e 2
Revisão 1e 2005-12-11 03:17:32
Tamanho: 2246
Editor: Nicholas
Comentário:
Revisão 2e 2005-12-11 03:18:46
Tamanho: 2136
Editor: Nicholas
Comentário:
Deleções são marcadas assim. Adições são marcadas assim.
Linha 10: Linha 10:
import sys
Linha 12: Linha 11:
if __name__ == '__main__':
   print "import os
import os
Linha 64: Linha 62:
    "
Linha 72: Linha 69:
import sys

if __name__ == '__main__':
   print "
Não tem mistério... é só usar, ele é auto-explicativo. :)"
Não tem mistério... é só usar, ele é auto-explicativo. :)

Receita: RenameFile

Este script Python renomeia os arquivos seguindo um padrão e/ou deixa tudo minúsculo e substitui os espaços por underline. No renomeio também pode existir prefixo e/ou sufixo determinado pelo usuário. Ideal para empresas de criação de sites (eu mesmo uso em uma :D)

Código

   1 import os
   2 import string
   3 
   4 diretorio = raw_input("Digite o diretorio onde serao feita as alteracoes: ")
   5 
   6 while not os.access(diretorio, 1):
   7   print 'O diretorio nao existe! Tente novamente'
   8   diretorio = raw_input("\nDigite o diretorio onde serao feita as alteracoes: ")
   9 else:
  10   os.chdir(diretorio)
  11 
  12 print "Escolha as opcoes abaixo:\n\n\
  13 1. Substituir espacos por underlines e deixar tudo minusculo\n\
  14 2. Renomear arquivos sequencialmente\n\n"
  15 
  16 opcao = raw_input("Qual opcao ira ser, newbaboy ? ")
  17 
  18 if opcao == '1':
  19   print "Os seguintes arquivos serao modificados: \n"
  20   print os.listdir(diretorio)
  21   confirm = raw_input("Deseja prosseguir ? S/N: ")
  22   
  23   if confirm == 'S' or 's':
  24     for arquivo in os.listdir(diretorio):
  25       x = arquivo
  26       os.rename(x,string.lower(x))
  27       s = string.split(x)
  28       z = string.join(s,'_')
  29       os.rename(x,z)
  30   print "Operacao realizada com sucesso! Os arquivos modificados ficaram assim:\n"
  31   print os.listdir(diretorio)
  32 
  33 elif opcao == '2':
  34   y = 1
  35   prefixo = raw_input("Coloque prefixo, se houver. Enter para prosseguir ")
  36   sufixo = raw_input("Coloque sufixo se houver. Enter para prosseguir ")
  37   for arquivo in os.listdir(diretorio):
  38     x = arquivo
  39     s = string.split(x,'.')
  40     if prefixo and sufixo:
  41       os.rename(x,prefixo+str(y)+sufixo+'.'+s[1])
  42       y = y + 1
  43     elif prefixo:
  44       os.rename(x,prefixo+str(y)+'.'+s[1])
  45       y = y + 1
  46     elif sufixo:
  47       os.rename(x,str(y)+sufixo+'.'+s[1])
  48       y = y + 1
  49     else:
  50       os.rename(x,str(y)+'.'+s[1])
  51       y = y + 1

Exemplo de uso

   1 Não tem mistério... é só usar, ele é auto-explicativo. :)

Volta para CookBook.


Nicholas Amorim Santos (Marshall)