Extrair datas de nomes de pastas com um padrão fixo pode parecer simples, mas fazer isso manualmente para centenas de pastas é um trabalho tedioso e propenso a erros. Com uma abordagem automatizada, você transforma uma tarefa repetitiva em um processo rápido e infalível, economizando tempo e garantindo precisão.
Antes de extrair a data, é fundamental identificar o padrão exato do nome da pasta. Por exemplo, se as pastas seguem o formato "Projeto_YYYYMMDD_Nome", a data está sempre nas posições 9 a 16 do nome. Reconhecer esse padrão é o primeiro passo para criar uma solução robusta.
Com Python, você pode automatizar a extração de datas de nomes de pastas usando o módulo os para listar as pastas e datetime para validar as datas encontradas. O script abaixo percorre todas as pastas em um diretório e extrai a data com base na posição fixa.
import os
from datetime import datetime
def extrair_data_pasta(diretorio, posicao_inicio=9, posicao_fim=17):
pastas = [d for d in os.listdir(diretorio) if os.path.isdir(os.path.join(diretorio, d))]
datas_extraidas = []
for pasta in pastas:
data_str = pasta[posicao_inicio:posicao_fim]
try:
data = datetime.strptime(data_str, '%Y%m%d')
datas_extraidas.append((pasta, data))
except ValueError:
continue
return datas_extraidas
# Exemplo de uso
diretorio = '/caminho/para/suas/pastas'
resultado = extrair_data_pasta(diretorio)
for pasta, data in resultado:
print(f"Pasta: {pasta}, Data: {data.strftime('%d/%m/%Y')}")
Se os nomes das pastas estão listados em uma planilha do Excel, você pode usar uma fórmula para extrair a data diretamente da célula. Supondo que o nome completo esteja na célula A2 e a data esteja nas posições 9 a 16, use:
=SE(ÉNÚMERO(VALOR(DIREITA(ESQUERDA(A2; 16); 8))), DATA(VALOR(ESQUERDA(DIREITA(ESQUERDA(A2; 16); 8); 4)); VALOR(MID(DIREITA(ESQUERDA(A2; 16); 8); 5; 2)); VALOR(DIREITA(DIREITA(ESQUERDA(A2; 16); 8); 2))), "")
| Nome da Pasta | Data Extraída |
|---|---|
| Projeto_20231015_ClienteA | 15/10/2023 |
| Projeto_20230920_ClienteB | 20/09/2023 |
| Projeto_20231105_ClienteC | 05/11/2023 |
Com este método, você automatiza a extração de datas de nomes de pastas em segundos, eliminando a necessidade de processamento manual e reduzindo drasticamente a chance de erros. A solução é adaptável a diferentes padrões, bastando ajustar as posições das substrings ou a formatação da data.