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

A versão 1.1.1 é 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.1.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.1-py3-none-any.whl (23.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: brazilian-1.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 7e397a7bd18a2cd5b32fd54d1a0b6fb22344e5cc4f9e6913ec0ce4677dd0ce9e
MD5 addc4d2ce08c3c1c27627a4702e52605
BLAKE2b-256 49b286c4e559571e5725f1a2858afab3b71625e558036b1d694164185c4cbfb6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: brazilian-1.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 93d958844bf40da699afd62450c751f85b69b8bf09ebc2da887010cb549afb71
MD5 32227194c1776d420c4d5d0062ea9519
BLAKE2b-256 b96177f3f4366b1c08d4afead602f5cbc38716cb2ae019e69ef0eee84918694f

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