Skip to main content

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.3, 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.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-XX ou ***.***.***-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.pydantic

    pip 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


PyPI version GitHub Stars PyPI - Downloads codecov

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

brazilian-1.0.3.tar.gz (51.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

brazilian-1.0.3-py3-none-any.whl (47.2 kB view details)

Uploaded Python 3

File details

Details for the file brazilian-1.0.3.tar.gz.

File metadata

  • Download URL: brazilian-1.0.3.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

Hashes for brazilian-1.0.3.tar.gz
Algorithm Hash digest
SHA256 0dd7bec86f62549a367518bf3e6faaa6758ca0977f73b7a3a6b88df1816e6b0f
MD5 b4b0b3703b7e988ad5be354447d462d9
BLAKE2b-256 3b7c4d3a8811c2166e44e8334c091a0d2615befc48245bc8432e55ab2a919792

See more details on using hashes here.

File details

Details for the file brazilian-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: brazilian-1.0.3-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

Hashes for brazilian-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9fd477263467307b3a00ba3b32d909212008b5fa91fcfb1cbf862443811b6563
MD5 d4686452d560a7640c73d7037a218222
BLAKE2b-256 ebfecfac09a7343dc856906ae6ba16122f2d8c0b7b2fff5b325ff9070aa7301f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page