flysmog.pages.dev

Como gerar lista de CEPs válidos por estado em lote?

Gerar uma lista de CEPs válidos para um estado inteiro manualmente é uma tarefa trabalhosa e propensa a erros. Com um script automatizado, você pode validar e filtrar milhares de CEPs em segundos, garantindo que apenas os códigos corretos sejam utilizados em suas operações logísticas ou análises de dados.

Pré-requisitos

Passo 1: Preparar o ambiente Python

Primeiro, crie um ambiente virtual e instale as bibliotecas necessárias para validação de CEPs e manipulação de arquivos CSV.

python -m venv cep_env
source cep_env/bin/activate  # No Windows: cep_env\Scripts\activate
pip install pandas
pip install validate-docbr

Passo 2: Criar o script de validação

Crie um arquivo chamado validar_cep.py e insira o código abaixo. Este script lê um CSV, valida os CEPs e salva apenas os válidos em um novo arquivo.

import pandas as pd
from validate_docbr import CEP

def validar_cep(cep):
    cep = str(cep).strip()
    return CEP().validate(cep)

def processar_csv(arquivo_entrada, arquivo_saida):
    df = pd.read_csv(arquivo_entrada)
    df['valido'] = df['CEP'].apply(validar_cep)
    df_validos = df[df['valido'] == True]
    df_validos.to_csv(arquivo_saida, index=False)
    print(f"Processamento concluído. {len(df_validos)} CEPs válidos salvos em {arquivo_saida}.")

if __name__ == "__main__":
    arquivo_entrada = 'ceps_input.csv'
    arquivo_saida = 'ceps_validos.csv'
    processar_csv(arquivo_entrada, arquivo_saida)

Passo 3: Preparar o arquivo CSV de entrada

Crie um arquivo CSV chamado ceps_input.csv com uma coluna chamada "CEP". Exemplo:

CEP
01001000
12345678
70000000
99999999
80000000

Passo 4: Executar o script

No terminal, execute o comando abaixo para processar o arquivo e gerar a lista de CEPs válidos.

python validar_cep.py

Exemplo Prático

Veja abaixo um exemplo de dados de entrada e saída esperada após a execução do script.

CEP (Entrada) válido (Saída)
01001000 True
12345678 False
70000000 True
99999999 False
80000000 True

Conclusão

Com este método, você automatiza a validação de CEPs em lote, eliminando erros manuais e garantindo que apenas códigos postais válidos sejam utilizados em seus processos. A solução é escalável e pode ser adaptada para diferentes formatos de entrada ou regras de negócio específicas.