brutils 2.1.0__tar.gz → 2.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {brutils-2.1.0 → brutils-2.2.0}/PKG-INFO +312 -124
- {brutils-2.1.0 → brutils-2.2.0}/README.md +311 -123
- {brutils-2.1.0 → brutils-2.2.0}/brutils/__init__.py +82 -3
- brutils-2.2.0/brutils/cep.py +268 -0
- brutils-2.2.0/brutils/data/enums/__init__.py +1 -0
- brutils-2.2.0/brutils/data/enums/better_enum.py +15 -0
- brutils-2.2.0/brutils/data/enums/uf.py +31 -0
- brutils-2.2.0/brutils/exceptions/__init__.py +1 -0
- brutils-2.2.0/brutils/exceptions/cep.py +8 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/legal_process.py +7 -2
- brutils-2.2.0/brutils/types/__init__.py +1 -0
- brutils-2.2.0/brutils/types/address.py +14 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/voter_id.py +87 -0
- {brutils-2.1.0 → brutils-2.2.0}/pyproject.toml +6 -3
- brutils-2.1.0/brutils/cep.py +0 -108
- {brutils-2.1.0 → brutils-2.2.0}/LICENSE +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/cnpj.py +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/cpf.py +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/data/legal_process_ids.json +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/email.py +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/license_plate.py +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/phone.py +0 -0
- {brutils-2.1.0 → brutils-2.2.0}/brutils/pis.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: brutils
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Utils library for specific Brazilian businesses
|
|
5
5
|
Home-page: https://github.com/brazilian-utils/brutils
|
|
6
6
|
License: MIT
|
|
@@ -31,12 +31,10 @@ Description-Content-Type: text/markdown
|
|
|
31
31
|
|
|
32
32
|
<p>Utils library for Brazilian-specific businesses.</p>
|
|
33
33
|
|
|
34
|
-
|
|
35
34
|
[](https://codecov.io/gh/brazilian-utils/brutils-python)
|
|
36
35
|
[](https://pypistats.org/packages/brutils)
|
|
37
36
|
[](https://pypi.org/project/brutils/)
|
|
38
37
|
|
|
39
|
-
|
|
40
38
|
### [Looking for the english version?](README_EN.md)
|
|
41
39
|
|
|
42
40
|
</div>
|
|
@@ -55,7 +53,7 @@ desenvolvimento de aplicações para o business Brasileiro.
|
|
|
55
53
|
|
|
56
54
|
# Instalação
|
|
57
55
|
|
|
58
|
-
```
|
|
56
|
+
```bash
|
|
59
57
|
pip install brutils
|
|
60
58
|
```
|
|
61
59
|
|
|
@@ -72,48 +70,51 @@ False
|
|
|
72
70
|
# Utilitários
|
|
73
71
|
|
|
74
72
|
- [CPF](#cpf)
|
|
75
|
-
- [
|
|
76
|
-
- [
|
|
77
|
-
- [
|
|
78
|
-
- [
|
|
73
|
+
- [is\_valid\_cpf](#is_valid_cpf)
|
|
74
|
+
- [format\_cpf](#format_cpf)
|
|
75
|
+
- [remove\_symbols\_cpf](#remove_symbols_cpf)
|
|
76
|
+
- [generate\_cpf](#generate_cpf)
|
|
79
77
|
- [CNPJ](#cnpj)
|
|
80
|
-
- [
|
|
81
|
-
- [
|
|
82
|
-
- [
|
|
83
|
-
- [
|
|
78
|
+
- [is\_valid\_cnpj](#is_valid_cnpj)
|
|
79
|
+
- [format\_cnpj](#format_cnpj)
|
|
80
|
+
- [remove\_symbols\_cnpj](#remove_symbols_cnpj)
|
|
81
|
+
- [generate\_cnpj](#generate_cnpj)
|
|
84
82
|
- [CEP](#cep)
|
|
85
|
-
- [
|
|
86
|
-
- [
|
|
87
|
-
- [
|
|
88
|
-
- [
|
|
83
|
+
- [is\_valid\_cep](#is_valid_cep)
|
|
84
|
+
- [format\_cep](#format_cep)
|
|
85
|
+
- [remove\_symbols\_cep](#remove_symbols_cep)
|
|
86
|
+
- [generate\_cep](#generate_cep)
|
|
87
|
+
- [get\_address\_from\_cep](#get_address_from_cep)
|
|
88
|
+
- [get\_cep\_information\_from\_address](#get_cep_information_from_address)
|
|
89
89
|
- [Telefone](#telefone)
|
|
90
|
-
- [
|
|
91
|
-
- [
|
|
92
|
-
- [
|
|
93
|
-
- [
|
|
94
|
-
- [
|
|
90
|
+
- [is\_valid\_phone](#is_valid_phone)
|
|
91
|
+
- [format\_phone](#format_phone)
|
|
92
|
+
- [remove\_symbols\_phone](#remove_symbols_phone)
|
|
93
|
+
- [remove\_international\_dialing\_code](#remove_international_dialing_code)
|
|
94
|
+
- [generate\_phone](#generate_phone)
|
|
95
95
|
- [Email](#email)
|
|
96
|
-
- [
|
|
96
|
+
- [is\_valid\_email](#is_valid_email)
|
|
97
97
|
- [Placa de Carro](#placa-de-carro)
|
|
98
|
-
- [
|
|
99
|
-
- [
|
|
100
|
-
- [
|
|
101
|
-
- [
|
|
102
|
-
- [
|
|
103
|
-
- [
|
|
98
|
+
- [is\_valid\_license\_plate](#is_valid_license_plate)
|
|
99
|
+
- [format\_license\_plate](#format_license_plate)
|
|
100
|
+
- [remove\_symbols\_license\_plate](#remove_symbols_license_plate)
|
|
101
|
+
- [generate\_license\_plate](#generate_license_plate)
|
|
102
|
+
- [convert\_license\_plate\_to\_mercosul](#convert_license_plate_to_mercosul)
|
|
103
|
+
- [get\_format\_license\_plate](#get_format_license_plate)
|
|
104
104
|
- [PIS](#pis)
|
|
105
|
-
- [
|
|
106
|
-
- [
|
|
107
|
-
- [
|
|
108
|
-
- [
|
|
105
|
+
- [is\_valid\_pis](#is_valid_pis)
|
|
106
|
+
- [format\_pis](#format_pis)
|
|
107
|
+
- [remove\_symbols\_pis](#remove_symbols_pis)
|
|
108
|
+
- [generate\_pis](#generate_pis)
|
|
109
109
|
- [Processo Jurídico](#processo-jurídico)
|
|
110
|
-
- [
|
|
111
|
-
- [
|
|
112
|
-
- [
|
|
113
|
-
- [
|
|
114
|
-
|
|
110
|
+
- [is\_valid\_legal\_process](#is_valid_legal_process)
|
|
111
|
+
- [format\_legal\_process](#format_legal_process)
|
|
112
|
+
- [remove\_symbols\_legal\_process](#remove_symbols_legal_process)
|
|
113
|
+
- [generate\_legal\_process](#generate_legal_process)
|
|
115
114
|
- [Título Eleitoral](#titulo-eleitoral)
|
|
116
115
|
- [is_valid_voter_id](#is_valid_voter_id)
|
|
116
|
+
- [format_voter_id](#format_voter_id)
|
|
117
|
+
- [generate_voter_id](#generate_voter_id)
|
|
117
118
|
|
|
118
119
|
## CPF
|
|
119
120
|
|
|
@@ -124,10 +125,12 @@ correspondem ao seu número base. Esta função não verifica a existência do C
|
|
|
124
125
|
ela apenas valida o formato da string.
|
|
125
126
|
|
|
126
127
|
Argumentos:
|
|
127
|
-
|
|
128
|
+
|
|
129
|
+
- cpf (str): O CPF a ser validado, uma string de 11 dígitos
|
|
128
130
|
|
|
129
131
|
Retorna:
|
|
130
|
-
|
|
132
|
+
|
|
133
|
+
- bool: Verdadeiro se os dígitos de verificação corresponderem ao número base,
|
|
131
134
|
Falso caso contrário.
|
|
132
135
|
|
|
133
136
|
Exemplo:
|
|
@@ -147,10 +150,12 @@ Esta função recebe uma string de CPF contendo apenas números como entrada e
|
|
|
147
150
|
adiciona símbolos de formatação padrão para exibição.
|
|
148
151
|
|
|
149
152
|
Argumentos:
|
|
150
|
-
|
|
153
|
+
|
|
154
|
+
- cpf (str): Uma string de CPF contendo apenas números.
|
|
151
155
|
|
|
152
156
|
Retorna:
|
|
153
|
-
|
|
157
|
+
|
|
158
|
+
- str: O CPF formatado com símbolos visuais se for válido,
|
|
154
159
|
None se não for válido.
|
|
155
160
|
|
|
156
161
|
Exemplo:
|
|
@@ -170,10 +175,12 @@ brasileiro). Esta função recebe como entrada uma string de CPF e remove todas
|
|
|
170
175
|
ocorrências dos caracteres '.', '-' dela.
|
|
171
176
|
|
|
172
177
|
Argumentos:
|
|
173
|
-
|
|
178
|
+
|
|
179
|
+
- cpf (str): A string de CPF contendo os símbolos a serem removidos.
|
|
174
180
|
|
|
175
181
|
Retorna:
|
|
176
|
-
|
|
182
|
+
|
|
183
|
+
- str: Uma nova string com os símbolos especificados removidos.
|
|
177
184
|
|
|
178
185
|
Exemplo:
|
|
179
186
|
|
|
@@ -188,7 +195,8 @@ Exemplo:
|
|
|
188
195
|
Gerar uma string de dígitos de CPF válida aleatória.
|
|
189
196
|
|
|
190
197
|
Retorna:
|
|
191
|
-
|
|
198
|
+
|
|
199
|
+
- str: Um CPF válido gerado aleatoriamente.
|
|
192
200
|
|
|
193
201
|
Exemplo:
|
|
194
202
|
|
|
@@ -210,10 +218,12 @@ string de dígitos com o comprimento apropriado. Esta função não verifica a
|
|
|
210
218
|
existência do CNPJ; ela só valida o formato da string.
|
|
211
219
|
|
|
212
220
|
Argumentos:
|
|
213
|
-
|
|
221
|
+
|
|
222
|
+
- cnpj (str): O CNPJ a ser validado.
|
|
214
223
|
|
|
215
224
|
Retorna:
|
|
216
|
-
|
|
225
|
+
|
|
226
|
+
- bool: True se os dígitos de verificação corresponderem ao número base,
|
|
217
227
|
False caso contrário.
|
|
218
228
|
|
|
219
229
|
Exemplo:
|
|
@@ -234,10 +244,12 @@ Esta função recebe uma string de CNPJ como entrada, valida seu formato e a
|
|
|
234
244
|
formata com símbolos visuais padrão para fins de exibição.
|
|
235
245
|
|
|
236
246
|
Argumentos:
|
|
237
|
-
|
|
247
|
+
|
|
248
|
+
- cnpj (str): A string de CNPJ a ser formatada para exibição.
|
|
238
249
|
|
|
239
250
|
Retorna:
|
|
240
|
-
|
|
251
|
+
|
|
252
|
+
- str: O CNPJ formatado com símbolos visuais se for válido, None se não for válido.
|
|
241
253
|
|
|
242
254
|
Exemplo:
|
|
243
255
|
|
|
@@ -257,10 +269,12 @@ Esta função recebe uma string de CNPJ como entrada e remove todas as
|
|
|
257
269
|
ocorrências dos caracteres '.', '/' e '-' dela.
|
|
258
270
|
|
|
259
271
|
Argumentos:
|
|
260
|
-
|
|
272
|
+
|
|
273
|
+
- cnpj (str): A string de CNPJ que contém os símbolos a serem removidos.
|
|
261
274
|
|
|
262
275
|
Retorna:
|
|
263
|
-
|
|
276
|
+
|
|
277
|
+
- str: Uma nova string com os símbolos especificados removidos.
|
|
264
278
|
|
|
265
279
|
Exemplo:
|
|
266
280
|
|
|
@@ -276,10 +290,12 @@ Gera uma string de dígitos CNPJ válida aleatória. Um número de filial
|
|
|
276
290
|
opcional pode ser fornecido; o padrão é 1.
|
|
277
291
|
|
|
278
292
|
Argumentos:
|
|
279
|
-
|
|
293
|
+
|
|
294
|
+
- branch (int): Um número de filial opcional a ser incluído no CNPJ.
|
|
280
295
|
|
|
281
296
|
Retorna:
|
|
282
|
-
|
|
297
|
+
|
|
298
|
+
- str: Um CNPJ válido gerado aleatoriamente.
|
|
283
299
|
|
|
284
300
|
Exemplo:
|
|
285
301
|
|
|
@@ -287,7 +303,7 @@ Exemplo:
|
|
|
287
303
|
>>> from brutils import generate_cnpj
|
|
288
304
|
>>> generate_cnpj()
|
|
289
305
|
'34665388000161'
|
|
290
|
-
>>>
|
|
306
|
+
>>> generate_cnpj(1234)
|
|
291
307
|
"01745284123455"
|
|
292
308
|
```
|
|
293
309
|
|
|
@@ -301,10 +317,12 @@ exatamente 8 dígitos. Esta função não verifica se o CEP é um CEP real, pois
|
|
|
301
317
|
valida apenas o formato da string.
|
|
302
318
|
|
|
303
319
|
Argumentos:
|
|
304
|
-
|
|
320
|
+
|
|
321
|
+
- cep (str): A string contendo o CEP a ser verificado.
|
|
305
322
|
|
|
306
323
|
Retorno:
|
|
307
|
-
|
|
324
|
+
|
|
325
|
+
- bool: True se o CEP for válido (8 dígitos), False caso contrário.
|
|
308
326
|
|
|
309
327
|
Exemplo:
|
|
310
328
|
|
|
@@ -325,11 +343,13 @@ Esta função recebe um CEP como entrada e, se for um CEP válido com 8 dígitos
|
|
|
325
343
|
o formata no padrão "12345-678".
|
|
326
344
|
|
|
327
345
|
Argumentos:
|
|
328
|
-
|
|
346
|
+
|
|
347
|
+
- cep (str): O CEP (Código de Endereçamento Postal) de entrada a ser
|
|
329
348
|
formatado.
|
|
330
349
|
|
|
331
350
|
Retorna:
|
|
332
|
-
|
|
351
|
+
|
|
352
|
+
- str: O CEP formatado no formato "12345-678" se for válido, None se não for
|
|
333
353
|
válido.
|
|
334
354
|
|
|
335
355
|
Example:
|
|
@@ -351,11 +371,13 @@ fornecido. Esta função recebe um CEP como entrada e remove todas as ocorrênci
|
|
|
351
371
|
dos caracteres '.' e '-' dele.
|
|
352
372
|
|
|
353
373
|
Argumentos:
|
|
354
|
-
|
|
374
|
+
|
|
375
|
+
- cep (str): O CEP (Código de Endereçamento Postal) de entrada que contém os
|
|
355
376
|
símbolos a serem removidos.
|
|
356
377
|
|
|
357
378
|
Retorna:
|
|
358
|
-
|
|
379
|
+
|
|
380
|
+
- str: Uma nova string com os símbolos especificados removidos.
|
|
359
381
|
|
|
360
382
|
Exemplo:
|
|
361
383
|
|
|
@@ -375,7 +397,8 @@ Gera um número de CEP (Código de Endereçamento Postal) aleatório de 8 dígit
|
|
|
375
397
|
como uma string.
|
|
376
398
|
|
|
377
399
|
Retorna:
|
|
378
|
-
|
|
400
|
+
|
|
401
|
+
- str: Um número de 8 dígitos gerado aleatoriamente.
|
|
379
402
|
|
|
380
403
|
Exemplo:
|
|
381
404
|
|
|
@@ -387,34 +410,105 @@ Exemplo:
|
|
|
387
410
|
'29641407'
|
|
388
411
|
```
|
|
389
412
|
|
|
413
|
+
### get_address_from_cep
|
|
414
|
+
|
|
415
|
+
Busca as informações de endereço a partir de um CEP (Código de Endereçamento Postal) utilizando a API da ViaCEP.
|
|
416
|
+
|
|
417
|
+
Argumentos:
|
|
418
|
+
|
|
419
|
+
- cep (str): O CEP a ser utilizado na busca.
|
|
420
|
+
- raise_exceptions (bool, opcional): Se deve gerar exceções quando o CEP for inválido ou não for encontrado. O padrão é False.
|
|
421
|
+
|
|
422
|
+
Retorna:
|
|
423
|
+
|
|
424
|
+
- Address | None: Um objeto Address (TypedDict) contendo as informações de endereço se o CEP for encontrado, caso contrário, None.
|
|
425
|
+
|
|
426
|
+
Exemplo:
|
|
427
|
+
|
|
428
|
+
```python
|
|
429
|
+
>>> from brutils import get_address_from_cep
|
|
430
|
+
>>> get_address_from_cep("12345678")
|
|
431
|
+
{
|
|
432
|
+
"cep": "12345-678",
|
|
433
|
+
"logradouro": "Rua Example",
|
|
434
|
+
"complemento": "",
|
|
435
|
+
"bairro": "Example",
|
|
436
|
+
"localidade": "Example",
|
|
437
|
+
"uf": "EX",
|
|
438
|
+
"ibge": "1234567",
|
|
439
|
+
"gia": "1234",
|
|
440
|
+
"ddd": "12",
|
|
441
|
+
"siafi": "1234"
|
|
442
|
+
}
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
### get_cep_information_from_address
|
|
446
|
+
|
|
447
|
+
Busca o CEP e outras informações a partir de um endereço utilizando a API da ViaCEP.
|
|
448
|
+
|
|
449
|
+
Argumentos:
|
|
450
|
+
|
|
451
|
+
- federal_unit (str): Abreviação de duas letras do estado brasileiro.
|
|
452
|
+
- city (str): Nome da cidade.
|
|
453
|
+
- street (str): Nome (ou substring) da rua.
|
|
454
|
+
- raise_exceptions (bool, opcional): Se deve gerar exceções quando o endereço é inválido ou não foi encontrado. O padrão é False.
|
|
455
|
+
|
|
456
|
+
Retorna:
|
|
457
|
+
|
|
458
|
+
- list[Address] | None: Uma lista de objetos Address (TypedDict) contendo as informações de endereço se o endereço for encontrado, None caso contrário.
|
|
459
|
+
|
|
460
|
+
Exemplo:
|
|
461
|
+
|
|
462
|
+
```python
|
|
463
|
+
>>> from brutils import get_cep_information_from_address
|
|
464
|
+
>>> get_cep_information_from_address("EX", "Example", "Rua Example")
|
|
465
|
+
[
|
|
466
|
+
{
|
|
467
|
+
"cep": "12345-678",
|
|
468
|
+
"logradouro": "Rua Example",
|
|
469
|
+
"complemento": "",
|
|
470
|
+
"bairro": "Example",
|
|
471
|
+
"localidade": "Example",
|
|
472
|
+
"uf": "EX",
|
|
473
|
+
"ibge": "1234567",
|
|
474
|
+
"gia": "1234",
|
|
475
|
+
"ddd": "12",
|
|
476
|
+
"siafi": "1234"
|
|
477
|
+
}
|
|
478
|
+
]
|
|
479
|
+
```
|
|
480
|
+
|
|
390
481
|
## Telefone
|
|
391
482
|
|
|
392
483
|
### is_valid_phone
|
|
393
484
|
|
|
394
485
|
Retorna se um número de telefone brasileiro é válido conforme o formato da string.
|
|
395
486
|
Não verifica se o número realmente existe.
|
|
396
|
-
|
|
397
487
|
```
|
|
488
|
+
|
|
398
489
|
is_valid_phone(phone_number, type)
|
|
490
|
+
|
|
399
491
|
```
|
|
400
492
|
|
|
401
493
|
Argumentos:
|
|
402
|
-
* phone_number (str):
|
|
403
|
-
* o número de telefone a ser validado
|
|
404
|
-
* apenas dígitos, sem símbolos
|
|
405
|
-
* sem o código do país
|
|
406
|
-
* deve incluir o número de DDD com dois dígitos
|
|
407
|
-
* exemplo: '+55 48 9999 9999' deve ser utilizado como '4899999999'
|
|
408
|
-
* obrigatório
|
|
409
494
|
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
495
|
+
- phone_number (str):
|
|
496
|
+
- o número de telefone a ser validado
|
|
497
|
+
- apenas dígitos, sem símbolos
|
|
498
|
+
- sem o código do país
|
|
499
|
+
- deve incluir o número de DDD com dois dígitos
|
|
500
|
+
- exemplo: '+55 48 9999 9999' deve ser utilizado como '4899999999'
|
|
501
|
+
- obrigatório
|
|
502
|
+
|
|
503
|
+
- type (str):
|
|
504
|
+
- 'mobile' para validar apenas números de celular
|
|
505
|
+
- 'landline' para validar apenas números de telefone fixo
|
|
506
|
+
- caso não especificado, valida para um para o outro.
|
|
507
|
+
- opcional
|
|
415
508
|
|
|
416
509
|
Retorna:
|
|
417
|
-
|
|
510
|
+
|
|
511
|
+
- bool: True se o número é válido, False caso contrário.
|
|
418
512
|
|
|
419
513
|
Exemplo:
|
|
420
514
|
|
|
@@ -429,15 +523,19 @@ True
|
|
|
429
523
|
```
|
|
430
524
|
|
|
431
525
|
### format_phone
|
|
526
|
+
|
|
432
527
|
Formata um número de telefone para exibição visual. Esta função recebe uma string representando um número de telefone contendo apenas números como entrada e adiciona símbolos de formatação padrão para exibição.
|
|
433
528
|
|
|
434
529
|
Argumentos:
|
|
435
|
-
|
|
530
|
+
|
|
531
|
+
- phone (str): Uma string representando um número de telefone.
|
|
436
532
|
|
|
437
533
|
Retorna:
|
|
438
|
-
|
|
534
|
+
|
|
535
|
+
- str: O número de telefone formatado para exibição ou None se não for válido.
|
|
439
536
|
|
|
440
537
|
Exemplo:
|
|
538
|
+
|
|
441
539
|
```python
|
|
442
540
|
>>> from brutils import format_phone
|
|
443
541
|
>>> format_phone("11994029275")
|
|
@@ -445,7 +543,7 @@ Exemplo:
|
|
|
445
543
|
>>> format_phone("1635014415")
|
|
446
544
|
'(16)3501-4415'
|
|
447
545
|
>>> format_phone("333333")
|
|
448
|
-
|
|
546
|
+
None
|
|
449
547
|
```
|
|
450
548
|
|
|
451
549
|
### remove_symbols_phone
|
|
@@ -453,12 +551,15 @@ Exemplo:
|
|
|
453
551
|
Remove símbolos do número de telefone. Esta função recebe um número de telefone como entrada e remove todos os símbolos, como parênteses '()', traços '-' e espaços ' '.
|
|
454
552
|
|
|
455
553
|
Argumentos:
|
|
456
|
-
|
|
554
|
+
|
|
555
|
+
- phone (str): O número de telefone de entrada que contém os símbolos a serem removidos.
|
|
457
556
|
|
|
458
557
|
Retorna:
|
|
459
|
-
|
|
558
|
+
|
|
559
|
+
- str: Uma nova string com os símbolos especificados removidos.
|
|
460
560
|
|
|
461
561
|
Exemplo:
|
|
562
|
+
|
|
462
563
|
```python
|
|
463
564
|
>>> from brutils import remove_symbols_phone
|
|
464
565
|
>>> remove_symbols_phone('(21)2569-6969')
|
|
@@ -474,12 +575,15 @@ Exemplo:
|
|
|
474
575
|
Remove o código internacional (+55) de uma string que contém um número de telefone brasileiro, mantendo outros caracteres especiais.
|
|
475
576
|
|
|
476
577
|
Argumentos:
|
|
477
|
-
|
|
578
|
+
|
|
579
|
+
- phone (str): O número de telefone de entrada que pode conter o código internacional.
|
|
478
580
|
|
|
479
581
|
Retorna:
|
|
480
|
-
|
|
582
|
+
|
|
583
|
+
- str: Uma nova string sem o código internacional, preservando outros caracteres especiais.
|
|
481
584
|
|
|
482
585
|
Exemplo:
|
|
586
|
+
|
|
483
587
|
```python
|
|
484
588
|
>>> from brutils import remove_international_dialing_code
|
|
485
589
|
>>> remove_international_dialing_code("5521994029275")
|
|
@@ -499,12 +603,14 @@ Exemplo:
|
|
|
499
603
|
Gera um número de telefone aleatório válido.
|
|
500
604
|
|
|
501
605
|
Argumentos:
|
|
502
|
-
|
|
606
|
+
|
|
607
|
+
- type (str): Pode ser "landline" ou "mobile".
|
|
503
608
|
Se não for especificado, a função gera um número
|
|
504
609
|
aleatório de qualquer tipo.
|
|
505
610
|
|
|
506
611
|
Retorna:
|
|
507
|
-
|
|
612
|
+
|
|
613
|
+
- str: Um número de telefone válido gerado aleatoriamente.
|
|
508
614
|
|
|
509
615
|
Exemplo:
|
|
510
616
|
|
|
@@ -525,10 +631,12 @@ Exemplo:
|
|
|
525
631
|
Verificar se uma string corresponde a um endereço de e-mail válido.
|
|
526
632
|
|
|
527
633
|
Argumentos:
|
|
528
|
-
|
|
634
|
+
|
|
635
|
+
- email (str): A string de entrada a ser verificada.
|
|
529
636
|
|
|
530
637
|
Retorna:
|
|
531
|
-
|
|
638
|
+
|
|
639
|
+
- bool: Verdadeiro se o email for um endereço de e-mail válido, Falso
|
|
532
640
|
caso contrário.
|
|
533
641
|
|
|
534
642
|
Exemplo:
|
|
@@ -555,12 +663,14 @@ Esta função não verifica se a placa de carro é uma placa de carro real,
|
|
|
555
663
|
apenas valida o formato da string.
|
|
556
664
|
|
|
557
665
|
Argumentos:
|
|
558
|
-
|
|
559
|
-
|
|
666
|
+
|
|
667
|
+
- license_plate (str): Uma string representando uma placa de carro.
|
|
668
|
+
- type (str): "old_format" ou "mercosul".
|
|
560
669
|
Se não especificado, verifica um ou outro.
|
|
561
670
|
|
|
562
671
|
Retorna:
|
|
563
|
-
|
|
672
|
+
|
|
673
|
+
- bool: True se a placa de carro for válida, False caso contrário.
|
|
564
674
|
|
|
565
675
|
Exemplo:
|
|
566
676
|
|
|
@@ -584,26 +694,28 @@ Formata uma placa de carro no padrão correto.
|
|
|
584
694
|
Esta função recebe uma placa de carro em qualquer formato (LLLNNNN ou LLLNLNN) e retorna uma versão formatada.
|
|
585
695
|
|
|
586
696
|
Argumentos:
|
|
587
|
-
|
|
697
|
+
|
|
698
|
+
- license_plate (str): Uma string representando uma placa de carro.
|
|
588
699
|
|
|
589
700
|
Retorna:
|
|
590
|
-
|
|
701
|
+
|
|
702
|
+
- str: A string da placa de carro formatada ou
|
|
591
703
|
'None' se a entrada for inválida.
|
|
592
704
|
|
|
593
705
|
Exemplo:
|
|
594
706
|
|
|
595
707
|
```python
|
|
596
708
|
>>> from brutils import format_license_plate
|
|
597
|
-
>>> format_license_plate("ABC1234")
|
|
709
|
+
>>> format_license_plate("ABC1234")
|
|
598
710
|
"ABC-1234"
|
|
599
711
|
# formato antigo (contém traço)
|
|
600
|
-
>>> format_license_plate("abc1234")
|
|
712
|
+
>>> format_license_plate("abc1234")
|
|
601
713
|
"ABC-1234"
|
|
602
714
|
# formato antigo (contém traço)
|
|
603
|
-
>>> format_license_plate("ABC1D23")
|
|
715
|
+
>>> format_license_plate("ABC1D23")
|
|
604
716
|
"ABC1D23"
|
|
605
717
|
# formato mercosul
|
|
606
|
-
>>> format_license_plate("abc1d23")
|
|
718
|
+
>>> format_license_plate("abc1d23")
|
|
607
719
|
"ABC1D23"
|
|
608
720
|
# formato mercosul
|
|
609
721
|
>>> format_license_plate("ABCD123")
|
|
@@ -615,10 +727,12 @@ None
|
|
|
615
727
|
Remove o símbolo de hífen (-) de uma string de placa de carro.
|
|
616
728
|
|
|
617
729
|
Argumentos:
|
|
618
|
-
|
|
730
|
+
|
|
731
|
+
- license_plate_number (str): Uma string de placa de carro contendo símbolos a serem removidos.
|
|
619
732
|
|
|
620
733
|
Retorna:
|
|
621
|
-
|
|
734
|
+
|
|
735
|
+
- str: A string da placa de carro com os símbolos especificados removidos.
|
|
622
736
|
|
|
623
737
|
Exemplo:
|
|
624
738
|
|
|
@@ -639,10 +753,12 @@ from brutils import remove_symbols_license_plate
|
|
|
639
753
|
Gera uma placa de carro válida no formato especificado. Caso nenhum formato seja fornecido, ele retornará uma placa de carro no formato Mercosul.
|
|
640
754
|
|
|
641
755
|
Argumentos:
|
|
642
|
-
|
|
756
|
+
|
|
757
|
+
- format (str): O formato desejado para a placa de carro. 'LLLNNNN' para o formato antigo ou 'LLLNLNN' para o formato Mercosul. O padrão é 'LLLNLNN'.
|
|
643
758
|
|
|
644
759
|
Retorna:
|
|
645
|
-
|
|
760
|
+
|
|
761
|
+
- str: Um número de placa de carro gerado aleatoriamente ou
|
|
646
762
|
None se o formato for inválido.
|
|
647
763
|
|
|
648
764
|
Exemplo:
|
|
@@ -664,10 +780,12 @@ None
|
|
|
664
780
|
Converte uma placa de carro no formato antigo (LLLNNNN) para o formato Mercosul (LLLNLNN).
|
|
665
781
|
|
|
666
782
|
Argumentos:
|
|
667
|
-
|
|
783
|
+
|
|
784
|
+
- license_plate(str): Uma string com o tamanho adequado que representa a placa no formato antigo.
|
|
668
785
|
|
|
669
786
|
Retorna:
|
|
670
|
-
|
|
787
|
+
|
|
788
|
+
- str: A placa Mercosul convertida (LLLNLNN) ou None se a entrada for inválida.
|
|
671
789
|
|
|
672
790
|
Exemplo:
|
|
673
791
|
|
|
@@ -687,10 +805,12 @@ Retorna o formato de uma placa de carro. 'LLLNNNN' para o formato antigo e
|
|
|
687
805
|
'LLLNLNN' para o formato Mercosul.
|
|
688
806
|
|
|
689
807
|
Argumentos:
|
|
690
|
-
|
|
808
|
+
|
|
809
|
+
- license_plate (str): Uma string de placa de carro sem símbolos.
|
|
691
810
|
|
|
692
811
|
Retorna:
|
|
693
|
-
|
|
812
|
+
|
|
813
|
+
- str: O formato da placa de carro (LLLNNNN, LLLNLNN) ou
|
|
694
814
|
'None' se o formato for inválido.
|
|
695
815
|
|
|
696
816
|
Exemplo:
|
|
@@ -716,15 +836,19 @@ None
|
|
|
716
836
|
Verifica se o número PIS/PASEP é valido. Apenas números, formatados como string. Não verifica se o PIS/PASEP realmente existe.
|
|
717
837
|
|
|
718
838
|
Referências:
|
|
719
|
-
|
|
839
|
+
|
|
840
|
+
- <https://www.macoratti.net/alg_pis.htm>.
|
|
720
841
|
|
|
721
842
|
Argumentos:
|
|
722
|
-
|
|
843
|
+
|
|
844
|
+
- pis (str): Número PIS como uma string com o comprimento apropriado.
|
|
723
845
|
|
|
724
846
|
Retorna:
|
|
725
|
-
|
|
847
|
+
|
|
848
|
+
- bool: True se o PIS for válido, False caso contrário.
|
|
726
849
|
|
|
727
850
|
Exemplo:
|
|
851
|
+
|
|
728
852
|
```python
|
|
729
853
|
from brutils import is_valid_pis
|
|
730
854
|
>>> is_valid_pis("82178537464")
|
|
@@ -738,10 +862,12 @@ True
|
|
|
738
862
|
Formata uma string de PIS (Programa de Integração Social) válida com símbolos e adiciona símbolos de formatação padrão para exibição.
|
|
739
863
|
|
|
740
864
|
Argumentos:
|
|
741
|
-
|
|
865
|
+
|
|
866
|
+
- pis (str): Uma string válida de PIS contendo apenas números.
|
|
742
867
|
|
|
743
868
|
Retorna:
|
|
744
|
-
|
|
869
|
+
|
|
870
|
+
- str: Uma string de PIS formatada com símbolos visuais padrão ou None se a entrada for inválida.
|
|
745
871
|
|
|
746
872
|
Exemplo:
|
|
747
873
|
|
|
@@ -758,10 +884,12 @@ from brutils import format_pis
|
|
|
758
884
|
Esta função recebe uma string de PIS (Programa de Integração Social) com símbolos de formatação e retorna uma versão limpa sem símbolos. Remove apenas os símbolos "-" e "." , propositalmente não remove outros símbolos.
|
|
759
885
|
|
|
760
886
|
Argumentos:
|
|
761
|
-
|
|
887
|
+
|
|
888
|
+
- pis (str): Uma string de PIS que pode conter símbolos de formatação.
|
|
762
889
|
|
|
763
890
|
Retorna:
|
|
764
|
-
|
|
891
|
+
|
|
892
|
+
- str: Uma string de PIS limpa, sem símbolos de formatação.
|
|
765
893
|
|
|
766
894
|
Exemplo:
|
|
767
895
|
|
|
@@ -781,7 +909,8 @@ from brutils import remove_symbols_pis
|
|
|
781
909
|
Gera uma string de dígitos contendo um número de um PIS brasileiro válido aleatório.
|
|
782
910
|
|
|
783
911
|
Retorna:
|
|
784
|
-
|
|
912
|
+
|
|
913
|
+
- str: Um número PIS válido gerado aleatoriamente como string.
|
|
785
914
|
|
|
786
915
|
Exemplo:
|
|
787
916
|
|
|
@@ -801,11 +930,13 @@ Verifica se um ID de processo jurídico é válido, não verifica se o ID de pro
|
|
|
801
930
|
jurídico real; ela apenas valida o formato da string.
|
|
802
931
|
|
|
803
932
|
Argumentos:
|
|
804
|
-
|
|
933
|
+
|
|
934
|
+
- legal_process_id (str): Uma string contendo apenas dígitos que representa
|
|
805
935
|
o ID do processo jurídico.
|
|
806
936
|
|
|
807
937
|
Retorna:
|
|
808
|
-
|
|
938
|
+
|
|
939
|
+
- bool: True se o ID do processo jurídico for válido, False caso
|
|
809
940
|
contrário.
|
|
810
941
|
|
|
811
942
|
Examplo:
|
|
@@ -828,11 +959,13 @@ False
|
|
|
828
959
|
Formata um ID de processo jurídico em um formato padrão.
|
|
829
960
|
|
|
830
961
|
Argumentos:
|
|
831
|
-
|
|
962
|
+
|
|
963
|
+
- legal_process_id (str): Uma string de 20 dígitos que representa o ID do
|
|
832
964
|
processo jurídico.
|
|
833
965
|
|
|
834
966
|
Retorna:
|
|
835
|
-
|
|
967
|
+
|
|
968
|
+
- str: O ID do processo jurídico formatado ou None se a entrada for inválida.
|
|
836
969
|
|
|
837
970
|
Exemplo:
|
|
838
971
|
|
|
@@ -853,11 +986,13 @@ Esta função recebe um processo jurídico como entrada e remove todas as
|
|
|
853
986
|
ocorrências dos caracteres '.' e '-' dele.
|
|
854
987
|
|
|
855
988
|
Argumentos:
|
|
856
|
-
|
|
989
|
+
|
|
990
|
+
- legal_process (str): Um processo jurídico contendo símbolos a serem
|
|
857
991
|
removidos.
|
|
858
992
|
|
|
859
993
|
Retorna:
|
|
860
|
-
|
|
994
|
+
|
|
995
|
+
- str: A string do processo jurídico com os símbolos especificados removidos.
|
|
861
996
|
|
|
862
997
|
Exemplo:
|
|
863
998
|
|
|
@@ -876,13 +1011,15 @@ from brutils import remove_symbols_legal_process
|
|
|
876
1011
|
Gera um número válido aleatório de ID de processo jurídico.
|
|
877
1012
|
|
|
878
1013
|
Argumentos:
|
|
879
|
-
|
|
1014
|
+
|
|
1015
|
+
- year (int): O ano para o ID do processo jurídico (o padrão é o ano atual).
|
|
880
1016
|
Não pode ser um ano do passado.
|
|
881
|
-
|
|
1017
|
+
- orgao (int): O órgão (1-9) para o ID do processo jurídico
|
|
882
1018
|
(o padrão é aleatório).
|
|
883
1019
|
|
|
884
1020
|
Retorna:
|
|
885
|
-
|
|
1021
|
+
|
|
1022
|
+
- str: Um ID de processo jurídico gerado aleatoriamente.
|
|
886
1023
|
None caso algum dos argumento seja inválido.
|
|
887
1024
|
|
|
888
1025
|
Exemplo:
|
|
@@ -903,17 +1040,20 @@ Exemplo:
|
|
|
903
1040
|
|
|
904
1041
|
### is_valid_voter_id
|
|
905
1042
|
|
|
906
|
-
Verifica se um número de
|
|
1043
|
+
Verifica se um número de Título de Eleitor brasileiro é válido. Não verifica se realmente existe.
|
|
907
1044
|
|
|
908
1045
|
Referências:
|
|
909
|
-
|
|
910
|
-
|
|
1046
|
+
|
|
1047
|
+
- <https://pt.wikipedia.org/wiki/T%C3%ADtulo_de_eleitor>
|
|
1048
|
+
- <http://clubes.obmep.org.br/blog/a-matematica-nos-documentos-titulo-de-eleitor/>
|
|
911
1049
|
|
|
912
1050
|
Argumentos:
|
|
913
|
-
|
|
1051
|
+
|
|
1052
|
+
- voter_id (str): string representando o número do título de eleitor a ser verificado.
|
|
914
1053
|
|
|
915
1054
|
Retorna:
|
|
916
|
-
|
|
1055
|
+
|
|
1056
|
+
- bool: True se o número do título de eleitor for válido. False, caso contrário.
|
|
917
1057
|
|
|
918
1058
|
Exemplo:
|
|
919
1059
|
|
|
@@ -925,6 +1065,54 @@ False
|
|
|
925
1065
|
True
|
|
926
1066
|
```
|
|
927
1067
|
|
|
1068
|
+
### format_voter_id
|
|
1069
|
+
|
|
1070
|
+
Formata um número de Título de Eleitor para exibição visual.
|
|
1071
|
+
|
|
1072
|
+
Esta função recebe uma string de Título de Eleitor contendo
|
|
1073
|
+
apenas números como entrada e adiciona os espaços de formatação
|
|
1074
|
+
padrão para exibição.
|
|
1075
|
+
|
|
1076
|
+
Argumentos:
|
|
1077
|
+
* voter_id (str): Uma string de Título de Eleitor contendo apenas números.
|
|
1078
|
+
|
|
1079
|
+
Retorna:
|
|
1080
|
+
* str: O Título de Eleitor formatado com os espaços, se for válido.
|
|
1081
|
+
Retorna None se não for válido.
|
|
1082
|
+
|
|
1083
|
+
Exemplo:
|
|
1084
|
+
|
|
1085
|
+
```python
|
|
1086
|
+
>>> from brutils import format_voter_id
|
|
1087
|
+
>>> format_voter_id("246593980493")
|
|
1088
|
+
'2465 9398 04 93'
|
|
1089
|
+
>>> format_voter_id("202715292895")
|
|
1090
|
+
'2027 1529 28 95'
|
|
1091
|
+
>>> format_voter_id("739035552205")
|
|
1092
|
+
>>>
|
|
1093
|
+
```
|
|
1094
|
+
|
|
1095
|
+
### generate_voter_id
|
|
1096
|
+
|
|
1097
|
+
Gera uma string de dígitos de Título de Eleitor válida aleatória a partir de um estado brasileiro informado.
|
|
1098
|
+
|
|
1099
|
+
Args:
|
|
1100
|
+
* federative_union (str): Unidade Federativa para o título de eleitor que será gerado. O valor padrão "ZZ" é usado para Títulos de Eleitor emitidos para estrangeiros.
|
|
1101
|
+
|
|
1102
|
+
Retorna:
|
|
1103
|
+
* str: Um Título de Eleitor válido gerado aleatoriamente.
|
|
1104
|
+
|
|
1105
|
+
Exemplo:
|
|
1106
|
+
|
|
1107
|
+
```python
|
|
1108
|
+
>>> from brutils import generate_voter_id
|
|
1109
|
+
>>> generate_voter_id()
|
|
1110
|
+
'183475722801'
|
|
1111
|
+
>>> generate_voter_id(federative_union ="MG")
|
|
1112
|
+
'950125640248'
|
|
1113
|
+
```
|
|
1114
|
+
|
|
1115
|
+
|
|
928
1116
|
# Novos Utilitários e Reportar Bugs
|
|
929
1117
|
|
|
930
1118
|
Caso queira sugerir novas funcionalidades ou reportar bugs, basta criar
|