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.1.2, e só depende do requests como biblioteca externa.

A versão 1.1.2 é a primeira versão estável. Versões anteriores não terão retro-compatibilidade.

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.1.2.tar.gz (15.9 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.1.2-py3-none-any.whl (23.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: brazilian-1.1.2.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for brazilian-1.1.2.tar.gz
Algorithm Hash digest
SHA256 5208b5eeda25c94aef8604ac62e02a8f8d132f390f148847622b23f65395d2cb
MD5 326953939d799aff4c71b4b69f316b40
BLAKE2b-256 9730cb9ad27ceb9d05fb472d6a0434506679ede4fe385f54603538fbd59fb40d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: brazilian-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 23.8 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.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0ad9ed7dbd61ebbf7fd4719e094a63a1ec20cbe534ae05e36ce0da58ab3c2db6
MD5 cfe857e8c0da4d650e76c36b92a0e0d1
BLAKE2b-256 b870a7dc9a0f401d96abc0a6110533f8f2ac3e5c8e11f2ca6af0b51143f11624

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