Pesquisa de site

Como renomear arquivos em lote em Python


Confira este script simples que pode economizar muito tempo renomeando arquivos manualmente.

A renomeação em lote é um método eficaz para organizar seus arquivos digitais. Pode ser especialmente útil quando seus arquivos não possuem nomes descritivos ou consistentes.

Você pode automatizar uma ação de renomeação em lote com um script Python simples. Passe um padrão para o script Python e permita que ele renomeie todos os arquivos em uma pasta usando uma convenção de nomenclatura consistente.

Quando o script Python estiver pronto, você poderá executá-lo na linha de comando e ele renomeará todos os arquivos em uma pasta especificada.

Como percorrer todos os arquivos em um diretório

Existem muitas maneiras de renomear um arquivo em lote no Windows, inclusive por meio do prompt de comando ou do explorador de arquivos do Windows.

Outra maneira de renomear arquivos é usando um script Python. Se você não está familiarizado com Python, existem maneiras de aprender como escrever um código Python melhor.

Para renomear todos os arquivos em uma determinada pasta, você precisará percorrer esse conjunto de arquivos. Você pode ver o exemplo completo neste repositório GitHub.

  1. Crie uma nova pasta para armazenar os arquivos que deseja renomear:

  2. Crie um novo arquivo chamado batch-rename.py.
  3. Na parte superior do arquivo, importe o módulo os. Isso permitirá que você acesse os arquivos e diretórios do seu sistema operacional:

    import os
  4. Defina o diretório onde você armazenou os arquivos:

    dir_path = "C:\\Users\\Sharl\\Desktop\\files"
    dir_path = "files"
  5. Inicialize uma variável de contador, que você usará para acrescentar uma contagem no final do nome do arquivo:

    counter = 1
  6. Adicione um loop for para iterar cada arquivo no diretório:

    for filename in os.listdir(dir_path):
      print("Renaming: " + filename + "...")
  7. Para testar o script, execute-o na linha de comando usando o comando python. Certifique-se de navegar até o local da pasta onde armazenou seu script:

    cd Desktop
    python batch-rename.py

Como renomear todos os arquivos com base em um determinado padrão

O usuário precisará inserir um padrão no script, como "Financial_Planning". O script renomeará todos os arquivos para o padrão fornecido e acrescentará uma contagem no final do nome do arquivo.

  1. Na parte superior do arquivo, importe o módulo sys.

    import sys
    python batch-rename.py "Financial_Planning"
  2. Após as instruções de importação, insira o argumento da linha de comando. Se o usuário não inserir um, imprima uma mensagem de erro:

    commandLineArgs = sys.argv
    if len(commandLineArgs) > 1:
      pattern = commandLineArgs[1] + "_{}"
    else:
      print('Enter a pattern for the new filenames as a command line argument')
      sys.exit()
  3. Dentro do loop for, ao percorrer cada arquivo, obtenha sua extensão de arquivo:

    file_ext = os.path.splitext(filename)[1] 
  4. Crie um novo nome de arquivo com base no padrão fornecido. Adicione uma contagem no final do nome do arquivo e adicione novamente a extensão do arquivo:

    new_filename = pattern.format(counter) + file_ext
  5. Renomeie o arquivo com o novo nome de arquivo:

    oldFileName = os.path.join(dir_path, filename)
    newFileName = os.path.join(dir_path, new_filename)
    os.rename(oldFileName, newFileName)
  6. Aumente o contador para o próximo arquivo:

    counter += 1
  7. Após o loop for, imprima uma mensagem de confirmação:

    print("All files renamed.")
  8. Em uma linha de comando, navegue até a pasta onde você armazenou seu script Python. Use o comando python, seguido de um padrão para renomear seus arquivos:

  9. Abra o explorador de arquivos e visualize os arquivos renomeados:

Automatizando tarefas simples usando Python

Um script Python é uma forma muito útil de automatizar tarefas simples, como renomear vários arquivos ao mesmo tempo. Você pode explorar outras maneiras de renomear arquivos em lote no seu computador.

Artigos relacionados: