/brutils-python

Utils library for specific Brazilian businesses 🇧🇷

Primary LanguagePythonMIT LicenseMIT

🇧🇷 Brazilian Utils

Utils library for Brazilian-specific businesses.

codecov Downloads per Month Package version

Introdução

Brazilian Utils é uma biblioteca com foco na resolução de problemas que enfrentamos diariamente no desenvolvimento de aplicações para o business Brasileiro.

Instalação

pip install brutils

Utilização

Para usar um de nossos utilitários, basta importar a função necessária, como no exemplo abaixo:

>>> from brutils import is_valid_cpf
>>> is_valid_cpf('00011122233')
False

Utilitários

CPF

is_valid_cpf

Verifica se o CPF é valido. Apenas números, formatados como string. Não verifica se o CPF existe.

>>> from brutils import is_valid_cpf
>>> is_valid_cpf('00011122233')
False

format_cpf

Formata o CPF. Retorna None se o CPF for inválido.

>>> from brutils import format_cpf
>>> format_cpf('11144477735')
'111.444.777-35'

remove_symbols_cpf

Remove os símbolos de formatação do CPF e retorna somente números. Filtra apenas os símbolos utilizados para a validação do CPF. Propositalmente não remove outros símbolos.

>>> from brutils import remove_symbols_cpf
>>> remove_symbols_cpf('000.111.222-33')
'00011122233'

generate_cpf

Gera um CPF válido aleatório.

>>> from brutils import generate_cpf
>>> generate_cpf()
'17433964657'

CNPJ

is_valid_cnpj

Verifica se o CNPJ é valido. Apenas números, formatados como string. Não verifica se o CNPJ existe.

>>> from brutils import is_valid_cnpj
>>> is_valid_cnpj('00111222000133')
False

format_cnpj

Formata o CNPJ.

>>> from brutils import format_cnpj
>>> format_cnpj('00111222000100')
'00.111.222/0001-00'

remove_symbols_cnpj

Remove os símbolos de formatação do CPF e retorna somente números. Filtra apenas os símbolos utilizados para a validação do CPF. Propositalmente não remove outros símbolos.

>>> from brutils import remove_symbols_cnpj
>>> remove_symbols_cnpj('00.111.222/0001-00')
'00111222000100'

generate_cnpj

Gera um CNPJ válido aleatório.

>>> from brutils import generate_cnpj
>>> generate_cnpj()
'34665388000161'

CEP

is_valid_cep

Verifica se o CEP é valido. Apenas números, formatados como string. Não verifica se o CEP existe.

>>> from brutils import is_valid_cep
>>> is_valid_cep('01310200')
True

format_cep

Formata o CEP. Retorna None se o CEP for inválido.

>>> from brutils import format_cep
>>> format_cep('01310200')
'01310-200'

remove_symbols_cep

Remove os símbolos de formatação do CEP e retorna somente números. Filtra apenas os símbolos utilizados para a validação do CEP. Propositalmente não remove outros símbolos.

>>> from brutils import remove_symbols_cep
>>> remove_symbols_cep('01310-200')
'01310200'

generate_cep

Gera um CEP válido aleatório.

>>> from brutils import generate_cep
>>> generate_cep()
'77520503'

Phone

is_valid_phone

Verifica se o número de telefone é valido, podendo ser telefone fixo ou celular. Apenas números, com DDD e sem o prefixo internacional, formatados como string. Exemplo: +55 48 9999 9999 deve ser chamado como is_valid_phone('4899999999'). Esta função valida apenas números de telefone brasileiros e não verifica se o número realmente existe.

>>> from brutils import is_valid_phone
>>> is_valid_phone('11994029275')
True

is_valid_mobile_phone

Verifica se o número de celular é valido. Apenas números, com DDD e sem o prefixo internacional, formatados como string.Exemplo: +55 48 9999 9999 ficaria '4899999999'. Esta função valida apenas números de celular brasileiros e não verifica se o número realmente existe.

>>> from brutils import is_valid_mobile_phone
>>> is_valid_mobile_phone('11994029275')
True

is_valid_landline_phone

Verifica se o número de telefone fixo é valido. Apenas números, com DDD e sem o prefixo internacional, formatados como string. Exemplo: +55 48 3333 3333 ficaria '4833333333'. Esta função valida apenas números de telefones fixos brasileiros e não verifica se o número realmente existe.

>>> from brutils import is_valid_landline_phone
>>> is_valid_landline_phone('1938814933')
True

Novos Utilitários e Reportar Bugs

Caso queira sugerir novas funcionalidades ou reportar bugs, basta criar uma nova issue e iremos lhe responder por lá!

(Para saber mais sobre github issues, confira a documentação oficial do GitHub).

Dúvidas? Ideias?

Dúvidas de como utilizar a biblioteca? Novas ideias para o projeto? Quer compartilhar algo com a gente? Fique à vontade para criar um tópico no nosso Discussions que iremos interagir por lá!

(Para saber mais sobre github discussions, confira a documentação oficial do GitHub).

Contribuindo com o Código do Projeto

Sua colaboração é sempre muito bem-vinda! Preparamos o arquivo CONTRIBUTING.md para te ajudar nos primeiros passos. Lá você encontrará toda a informação necessária para contribuir com o projeto. Não hesite em nos perguntar utilizando o GitHub Discussions caso haja qualquer dificuldade ou dúvida. Toda ajuda conta!

Vamos construir juntos! 🚀🚀