
Como extrair milhares de Chaves de Acesso (NF-e/CT-e) em segundos com Python
by Adriner
Pessoal, quem trabalha com o setor fiscal sabe o pesadelo que é abrir arquivo por arquivo para copiar chaves de acesso. Para facilitar nossa vida aqui na fiscal.io, desenvolvi um pequeno script em Python que faz todo o trabalho pesado por nós. Ele varre todas as pastas (21, 22, 23...) e entrega um arquivo prontinho com todas as chaves."
🛠️ O que o Script faz?
Busca Recursiva: Ele entra em todas as subpastas automaticamente (não importa se você organiza por ano ou mês).
Inteligência Fiscal: Identifica apenas sequências de 44 dígitos, que é o padrão das chaves de NF-e e CT-e.
Limpeza de Duplicados: Se uma chave aparecer em dois relatórios diferentes, o script salva apenas uma vez.
💻 O Código
(No Publii, use o bloco "Code" para colar o script abaixo)
import os
import re
# Defina o caminho da sua pasta aqui
caminho_pasta = r"C:\SEU_CAMINHO_AQUI"
arquivo_saida = os.path.join(caminho_pasta, "chaves_extraidas.txt")
padrao_chave = re.compile(r'\d{44}')
chaves_totais = set()
for raiz, pastas, arquivos in os.walk(caminho_pasta):
for nome_arq in arquivos:
if nome_arq.endswith('.py'): continue
try:
with open(os.path.join(raiz, nome_arq), 'r', encoding='latin-1') as f:
encontradas = padrao_chave.findall(f.read())
for c in encontradas:
chaves_totais.add(c)
except:
continue
with open(arquivo_saida, 'w') as f_out:
for chave in sorted(chaves_totais):
f_out.write(chave + '\n')
print(f"Sucesso! {len(chaves_totais)} chaves extraídas.")