API para consulta de CEPs
Project description
PyCEPCorreios
API para busca de CEP integrado ao serviços dos Correios, ViaCEP e ApiCEP (WideNet)
Instalação | Como Usar | Como Contribuir | Créditos
Instalação
A PyCEPCorreios pode ser facilmente instalada com o comando a seguir:
pip install pycep-correios
Atualmente, a PyCEPCorreios possui suporte para Python 3.5+.
Como usar
A PyCEPCorreios foi desenvolvida para integração de consultas sob demandas em páginas web. A consulta de CEPs em massa através de scripts ou qualquer outros meios não é recomendada.
A PyCEPCorreios utiliza por padrão de consulta a API provida pelo serviço ApiCEP. Para utilização de outros serviços, devemos indica o serviço desejado ao chamar a função get_address_from_cep
. O CEP sempre deve ser uma string e pode ou não conter pontuação.
Exemplo de consulta ao serviço ApiCEP (default):
from pycep_correios import get_address_from_cep, WebService
address = get_address_from_cep('37503-130', webservice=WebService.APICEP)
Exemplo de consulta ao serviço ViaCEP:
from pycep_correios import get_address_from_cep, WebService
address = get_address_from_cep('37503-130', webservice=WebService.VIACEP)
Exemplo de consulta ao serviço dos Correios:
from pycep_correios import get_address_from_cep, WebService
address = get_address_from_cep('37503-130', webservice=WebService.CORREIOS)
Obs.: O serviço de busca de CEP dos Correios é parte integrante do serviço SIGEPWeb e para uso do mesmo é necessário ter contrato com os Correios, conforme indicado no capítulo Introdução presente no manual de integração do serviço.
Retorno e Exceptions
Independente do serviço escolhido, o formato de resposta sempre será um objeto dict
contendo as seguintes chaves:
{
'bairro': 'str',
'cep': 'str',
'cidade': 'str',
'logradouro': 'str',
'uf': 'str',
'complemento': 'str',
}
A PyCEPCorreios tambem dá suporte a um grupo de exceptions que podem ser utilizadas para tratamento de quaisquer erros que ocorram durante o processo de consulta.
from pycep_correios import get_address_from_cep, WebService, exceptions
try:
address = get_address_from_cep('37503-130', webservice=WebService.APICEP)
except exceptions.InvalidCEP as eic:
print(eic)
except exceptions.CEPNotFound as ecnf:
print(ecnf)
except exceptions.ConnectionError as errc:
print(errc)
except exceptions.Timeout as errt:
print(errt)
except exceptions.HTTPError as errh:
print(errh)
except exceptions.BaseException as e:
print(e)
Como contribuir
Deseja participar do desenvolvimento da PyCEPCorreios? Veja a guideline de contribuição aqui.
Créditos
Copyright (C) 2016-2022 por Michell Stuttgart
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
Hashes for pycep_correios-5.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01f1a9acc174bee908495ce34a9acf75013cabc4dd162e9aae38493fe432f801 |
|
MD5 | b9306f46f6b1854cc147b5f3e938d8f6 |
|
BLAKE2b-256 | ae98e41a54f34779bad2ab391510add7aefacf5370e5eb91a26768fe417a97b8 |