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.3, 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.3.tar.gz (16.0 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.3-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: brazilian-1.1.3.tar.gz
  • Upload date:
  • Size: 16.0 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.3.tar.gz
Algorithm Hash digest
SHA256 2ee03ba91e348bcd9f1244a8c07a8c5497332a378b6e393a56d16b9918da4388
MD5 c6084430730f0c3557fea92843f1a133
BLAKE2b-256 45ce33c08d8462fcd92d35343b43445449f07b25b31513f56eb584053fc88025

See more details on using hashes here.

File details

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

File metadata

  • Download URL: brazilian-1.1.3-py3-none-any.whl
  • Upload date:
  • Size: 24.1 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 19bea5e0c2207dd9738ae4f506f37ad607ba134810485fc7ed7647f83851ab27
MD5 1af23271eaac1134600c2d03b4bce113
BLAKE2b-256 6cc19fd5b8df5ff27c504c2c5da81bf16f12771e15318ba1c8fce93f13af8063

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