Validate brazilian documents.
Project description
validate-docbr
Pacote Python para validação de documentos brasileiros.
Para instalar o pacote:
pip install validate-docbr
Ou com uv:
uv add validate-docbr
A documentação pode ser acessada clicando aqui.
Documentos
Documentos que estão no pacote:
- CPF: Cadastro de Pessoas Físicas;
- CNH: Carteira Nacional de Habilitação;
- CNPJ: Cadastro Nacional da Pessoa Jurídica (numérico e alfanumérico);
- CNS: Cartão Nacional de Saúde;
- PIS: PIS/NIS/PASEP/NIT;
- Título eleitoral: Cadastro que permite cidadãos brasileiros votar;
- RENAVAM: Registro Nacional de Veículos Automotores;
- Certidão: Certidão de Nascimento/Casamento/Óbito.
Para entender melhor os documentos e suas respectivas classes, basta acessar a Wiki do projeto.
Métodos
Todos os documentos possuem os mesmos métodos e funcionam da mesma forma.
validate
Valida o documento passado como argumento. Retorna um bool,
True caso seja válido, False caso contrário.
Recebe os parâmetros:
| Parâmetro | Tipo | Valor padrão | Obrigatório | Descrição |
|---|---|---|---|---|
doc |
str |
'' |
X | Documento a validar. |
from validate_docbr import CPF
cpf = CPF()
# Validar CPF
cpf.validate("012.345.678-90") # True
cpf.validate("012.345.678-91") # False
validate_list
Valida uma lista de documentos passado como argumento.
Retorna uma lista de bool, True caso seja válido,
False caso contrário. Recebe os parâmetros:
| Parâmetro | Tipo | Valor padrão | Obrigatório | Descrição |
|---|---|---|---|---|
docs |
list[str] |
[] |
X | Lista de docs. |
from validate_docbr import CPF
cpf = CPF()
# Validar CPFs
cpf.validate_list(["012.345.678-90", "012.345.678-91"])
# [True, False]
validate_docs
Observação: diferente dos outros métodos, esse método é do escopo global do pacote, não precisa-se instanciar uma classe para uso.
Valida vários documentos diferentes. Retorna uma lista com
valores bool para cada tupla da lista (na mesma ordem),
True caso seja válido, False caso contrário.
Recebe os parâmetros:
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
documents |
list[tuple[...]] |
X | Lista de tuplas. |
Cada tupla possui como primeiro elemento o tipo de documento
(DocumentBase) e o segundo o valor que se deseja validar.
import validate_docbr as docbr
# Validar diferentes documentos
docs = [
(docbr.CPF, '90396100457'),
(docbr.CNPJ, '49910753848365'),
]
docbr.validate_docs(docs) # [True, False]
generate
Gera um novo documento, retorna em formato de str.
Recebe os parâmetros:
| Parâmetro | Tipo | Valor padrão | Obrigatório | Descrição |
|---|---|---|---|---|
mask |
bool |
False |
- | Retorna com máscara. |
from validate_docbr import CPF
cpf = CPF()
# Gerar novo CPF
new_cpf_one = cpf.generate() # "01234567890"
new_cpf_two = cpf.generate(mask=True) # "012.345.678-90"
generate_list
Gera uma lista de documentos, retorna em formato de list
com elementos do tipo str. Recebe os parâmetros:
| Parâmetro | Tipo | Valor padrão | Obrigatório | Descrição |
|---|---|---|---|---|
n |
int |
1 |
X | Quantidade. |
mask |
bool |
False |
- | Com máscara. |
repeat |
bool |
False |
- | Aceita repetidos. |
from validate_docbr import CPF
cpf = CPF()
# Gerar lista de CPFs
cpfs_one = cpf.generate_list(2)
# [ "85215667438", "28293145811" ]
cpfs_two = cpf.generate_list(2, mask=True)
# [ "852.156.674-38", "282.931.458-11" ]
mask
Mascara o documento passado como argumento. Retorna um str
que é o documento mascarado. Aceita documentos com ou sem
pontuação. Recebe os parâmetros:
| Parâmetro | Tipo | Valor padrão | Obrigatório | Descrição |
|---|---|---|---|---|
doc |
str |
'' |
X | Documento a mascarar. |
from validate_docbr import CPF
cpf = CPF()
cpf_me = "01234567890"
# Mascara o CPF
cpf.mask(cpf_me) # "012.345.678-90"
Testes
Para realizar os testes basta executar o seguinte comando:
task test
Para verificar a cobertura de testes:
task test-coverage
Para verificar os tipos:
task type-check
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file validate_docbr-2.0.0.tar.gz.
File metadata
- Download URL: validate_docbr-2.0.0.tar.gz
- Upload date:
- Size: 46.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7693783718c7c3d90bdb759a6b41eca647fb297d74a50e0bcdc6244690a8545
|
|
| MD5 |
98a6dc5596e6d3bc27ed850a37bc4322
|
|
| BLAKE2b-256 |
7f43822521a1c0c826d0a5224fede4ab3f5885b0485f94ac20af1b46c384be52
|
File details
Details for the file validate_docbr-2.0.0-py3-none-any.whl.
File metadata
- Download URL: validate_docbr-2.0.0-py3-none-any.whl
- Upload date:
- Size: 16.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08b4a7c49ea1018179151dad94b7192425925b0b23fed0045f3261831a4ae43c
|
|
| MD5 |
91c6837478b6ccd4ee9485e730c7607d
|
|
| BLAKE2b-256 |
9845e6a064f1ac0c9eab72943573554c5c4e0380587a5a907f25a3242114b782
|