Brazilian: Validação e Geração de Dados Brasileiros
Brazilian é uma biblioteca robusta para a manipulação, validação e geração de dados comuns no Brasil, como CPF, CRM, CNPJ e outros. Diferente de geradores simples, esta biblioteca oferece classes ricas em funcionalidades, permitindo formatação, mascaramento e extração de informações contextuais (como região de emissão).
Instalação
Hoje, a versão mais recente é 1.2.0, e só depende do requests como biblioteca externa.
pip install brazilian
Uso Rápido
1. Classe CPF
A classe CPF permite validar, formatar e gerar números de Cadastro de Pessoas Físicas.
from brazilian import CPF
cpf = CPF("12345678900")
print(f"Valor limpo: {cpf.value}") # Saída: 12345678900
print(f"Formatado: {cpf.formatted}") # Saída: 123.456.789-00
print(f"Mascarado: {cpf.masked}") # Saída: ***.***.***-00
print(f"É válido? {cpf.is_valid}") # Saída: True/False
print(f"Região de emissão: {cpf.region}") # Saída: Sao Paulo
# Geração de CPF válido
novo_cpf = CPF.generate()
print(f"Novo CPF gerado: {novo_cpf.formatted}")
2. Classe CRM
A classe CRM permite validar, formatar e gerar números de Registro no Conselho Regional de Medicina.
from brazilian import CRM
# Validação e Formatação
crm = CRM("123456SP")
print(f"Valor limpo: {crm.value}") # Saída: 123456SP
print(f"Formatado: {crm.formatted}") # Saída: 123456-SP
print(f"Mascarado: {crm.masked}") # Saída: ***456-SP
print(f"É válido? {crm.is_valid}") # Saída: True/False
print(f"Estado (UF): {crm.uf}") # Saída: Sao Paulo
print(f"Região: {crm.region}") # Saída: Sudeste
# Geração de CRM válido para um UF específico
novo_crm = CRM.generate(uf="RJ")
print(f"Novo CRM gerado (RJ): {novo_crm.formatted}")
Principais Funcionalidades
- Validação Robusta: Implementa a lógica de validação oficial para garantir a integridade dos dados.
- Formatação Flexível: Oferece métodos para formatar e mascarar os documentos (ex:
XXX.XXX.XXX-XXou***.***.***-XX). - Geração de Dados: Métodos estáticos para gerar números válidos e aleatórios.
- Informação Contextual: Extração de dados como a região de emissão (CPF) ou o estado/região (CRM).
Extras Opcionais
Você pode instalar dependências extras para funcionalidades adicionais:
-
Pydantic: para usar os modelos do
brazilian.pydanticpip install brazilian[pydantic]
Isso adiciona o pydantic como dependência e permite usar os modelos Pydantic para CPF, CNPJ etc.
-
Testes: para rodar os testes da biblioteca
pip install brazilian[test]
Isso instala pytest para facilitar o desenvolvimento e a execução de testes.
-
SQLAlchemy: para utilizar classes prontas do SQLAlchemy
pip install brazilian[sqlalchemy]
Isso instala módulos necessários para utilizar os SQLAlchemy Types
-
ORM: Importação completa com suporte para ORM do SQLAlchemy
pip install brazilian[orm]
Instala direto o SQLAlchemy junto do Pydantic, onde são utilizados juntos dentro das classes internas.
Documentação Completa
Para detalhes sobre todas as propriedades e métodos disponíveis, consulte a Documentação Completa.
Contribuição
Para contribuir, acesse: CONTRIBUTING.md
Metadata
Release files for brazilian 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| brazilian-1.2.0.tar.gz | 16.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| brazilian-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.2 kB
Release files / brazilian-1.2.0.tar.gz
| Download URL | brazilian-1.2.0.tar.gz |
|---|---|
| Size | 16.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ae2ed3d15db1f77dab96c0856e00a3fb9716450e98326ee2822ca0d8c94ad352
|
|
BLAKE2b-256 checksum How to use checksums |
ccafcee3d672445a5d17b48fe8299c7c7de524fe03c68074a53d4a790bb10217
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|
Release files / brazilian-1.2.0-py3-none-any.whl
| Download URL | brazilian-1.2.0-py3-none-any.whl |
|---|---|
| Size | 27.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78bd806b5a88f581301baf0d0a3284bf3c120c8f2e79683c061b59e7af464f16
|
|
BLAKE2b-256 checksum How to use checksums |
99d387127b4152d5443f03340af4f6f04dc4b9b06446d034484697ec8d162e95
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.2
|