A complete library about faking / validating brazilian common data
Project description
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.0.2, e não depende de biblotecas externas.
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.documents 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.documents 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file brazilian-1.0.2.tar.gz.
File metadata
- Download URL: brazilian-1.0.2.tar.gz
- Upload date:
- Size: 51.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ca7e6eb708260b569d068bdf2b4281a1476662665b72aea4690d139ca60d4ba
|
|
| MD5 |
9dfc89f432157cb7edd25b231fca6cf1
|
|
| BLAKE2b-256 |
63fa8285f0d9d2896075fd201747cfc86b99592e8f1a0a521681c8095f77584d
|
File details
Details for the file brazilian-1.0.2-py3-none-any.whl.
File metadata
- Download URL: brazilian-1.0.2-py3-none-any.whl
- Upload date:
- Size: 47.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e66891e6cee9eafce80dfd170c4a9e6c9ef1b6b075410266596978ec9d5b67cf
|
|
| MD5 |
4130ef0c7dbbc98244efcfbc48372051
|
|
| BLAKE2b-256 |
78b3e948c629babd00079c5dd0404bced19b0f7ce846711bf268d3729bafeefb
|