Compatível com Python 2.7 e 3.x
brutils é uma biblioteca para tratar de validações de documentos brasileiros, e que eventualmente pode evoluir para tratar de outras coisas dentro do escopo de validações relacionadas a burocracias brasileiras.
Sua principal funcionalidade é a validação de CPFs e CNPJs, mas sugestões sobre outras coisas a se validar (preferencialmente de maneira determinística) são bem vindas.
pip install brutils >>> from brutils import cpf, cnpj # somente numeros, em formato string >>> cpf.validate('00011122233') False >>> cnpj.validate('00111222000133') False >>> cpf.sieve('000.111.222-33') '00011122233' >>> cnpj.sieve('00.111.222/0001-00') '00111222000100' # A função `sieve` limpa apenas os simbolos de formatação de CPF ou CNPJ, e de # whitespace nas pontas. Ela não remove outros caractéres propositalmente, pois # estes seriam indicativos de uma possível corrupção no dado ou de uma falta de # filtros de input. >>> cpf.display('00011122233') '000.111.222-33' >>> cnpj.display('00111222000100') '00.111.222/0001-00' >>> cpf.generate() '17433964657' >>> cnpj.generate() '34665388000161' python2.7 -m unittest discover tests/ python3 -m unittest discover tests/