Verificador de CNPJ para Zope
Publicado por Cleber J Santos 01/12/2008
[ Hits: 7.145 ]
Download VerificadorDeCnpjParaZope.py
Uma mistura do código do amigo Pedro Werneck em http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCpf e do amigo Michel Thadeu Sabchuk em http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCnpj.
O script pode ser utilizado diretamente na ZMI ao invés de ter que criar um External Method ;)
## Script (Python) "valida_CNPJ" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=cnpj ##title= ## """ Baseado nos códigos de Pedro Werneck e Michel Thadeu Sabchuk http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCpf http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCnpj Adaptado para o Zope por Cleber J Santos http://www.pythonbrasil.com.br/moin.cgi/VerificadorDeCnpjParaZope """ cnpj = context.REQUEST.get('cnpj',None) cnpj_invalidos = [15*str(i) for i in range(10)] if not cnpj.isdigit(): """ Verifica se o CPF contem pontos, hifens e Barras """ cnpj = cnpj.replace(".", "") cnpj = cnpj.replace("-", "") cnpj = cnpj.replace("/", "") if (not cnpj) or (len(cnpj) < 14): return False elif cnpj in cnpj_invalidos: return False else: """ Pega apenas os 12 primeiros dígitos do CNPJ e gera os 2 dígitos que faltam """ inteiros = map(int, cnpj) novoCnpj = inteiros[:12] prod = [5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2] while len(novoCnpj) < 14: r = sum([x*y for (x, y) in zip(novoCnpj, prod)]) % 11 if r > 1: f = 11 - r else: f = 0 novoCnpj.append(f) prod.insert(0, 6) """ Se o número gerado coincidir com o número original, é válido """ if novoCnpj == inteiros: return bool(novoCnpj == inteiros) return False
Tradutor Inglês/Português utilizando MyMemory
Cotação do Dólar e Euro e conversão para Real
Nenhum comentário foi encontrado.
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Muito consumo de RAM no Kubuntu? (1)
Meus HDs não aparecem mais no boot da placa mãe (6)
Compartilhando uma ideia sobre computação quantica (0)
DICAS: Abrir arquivos em lotes no terminal usando o LibreOffice (1)