Skip to main content

Uma biblioteca python com modelos de validação para os principais documentos brasileiros

Project description

Pydantic BR Validator 🇧🇷

Uma biblioteca python com modelos de validação para os principais documentos brasileiros.

Test Package version Supported Python versions


Instalação

pip install pydantic-br-validator

ou

uv add pydantic-br-validator

Campos disponíveis

  • CPF
  • CNPJ
  • RG
  • CNH
  • DUT
  • Título de eleitor
  • PIS
  • Certidão de nascimento
  • Renavam
  • Placa
  • ISBN
  • CEP

Exemplos

CPF

from pprint import pprint

from pydantic import BaseModel

from pydantic_br_validator import CPF, CPFDigits, CPFMask


class Cliente(BaseModel):
    nome: str
    cpf: CPF  # aceita CPF válidos com ou sem máscara
    cpf_mask: CPFMask  # aceita CPF válido apenas com máscara
    cpf_digits: CPFDigits  # aceita CPF válido apenas com dígitos


cliente = Cliente(
    nome="Hudson", cpf="04120039021", cpf_mask="041.200.390-21", cpf_digits="04120039021"
)


pprint(cliente.dict())

CNPJ

from pprint import pprint

from pydantic import BaseModel

from pydantic_br_validator import CNPJ, CNPJDigits, CNPJMask


class Cliente(BaseModel):
    nome: str
    cnpj: CNPJ  # aceita CNPJ válidos com ou sem máscara
    cnpj_mask: CNPJMask  # aceita CNPJ válido apenas com máscara
    cnpj_digits: CNPJDigits  # aceita CNPJ válido apnas com dígitos


cliente = Cliente(
    nome="Hudson", cnpj="47895328000187", cnpj_mask="47.895.328/0001-87", cnpj_digits="47895328000187"
)


pprint(cliente.dict())

CEP

from pprint import pprint

from pydantic import BaseModel

from pydantic_br_validator import CEP, CEPDigits, CEPMask


class Endereco(BaseModel):
    rua: str
    numero: str
    bairro: str
    cidade: str
    cep: CEP  # aceita CEP válidos com ou sem máscara
    cep_mask: CEPMask  # aceita CEP válido apenas com máscara
    cep_digits: CEPDigits  # aceita CEP válido apnas com dígitos


endereco = Endereco(
    rua="Avenida Paulista",
    numero="100",
    bairro="Aclimação",
    cidade="São Paulo",
    cep="01310100",
    cep_mask="01310-100",
    cep_digits="01310100",
)


pprint(endereco.dict())

Licença

Este projeto está licenciado sob os termos da licença do MIT licença

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

pydantic_br_validator-0.9.0.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

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

pydantic_br_validator-0.9.0-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file pydantic_br_validator-0.9.0.tar.gz.

File metadata

File hashes

Hashes for pydantic_br_validator-0.9.0.tar.gz
Algorithm Hash digest
SHA256 cd893bbc398c0d87493da09258556deaf88fb4c137eb0df96a0af0f45f79570b
MD5 fccabc74089f63df280aac6a1ea8a5c8
BLAKE2b-256 976d13c3e387d0614060ad4a00e44e1e50e8526b18dcf2bad331112396945e41

See more details on using hashes here.

File details

Details for the file pydantic_br_validator-0.9.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pydantic_br_validator-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d9fcc3f6e657865b37ffbcb25cf3c10c198b1e47841696e61387afac170b4ef4
MD5 fd6620cda3cc74b8816ac0c88d2b1f39
BLAKE2b-256 8651f7944a7372749a533aee35d91f293da270e2c00ddcc900d5067be8aa2799

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