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.
Consultar o endereço de um CEP é muito simples com o PyCEPCorreios. Veja os exemplos a seguir:
>>> import pycep_correios
>>> endereco = pycep_correios.get_address_from_cep('37503130')
>>> print(endereco)
{
'bairro': 'Santo Antônio',
'cep': '37503130',
'cidade': 'Itajubá',
'logradouro': 'Rua Geraldino Campista',
'uf': 'MG',
'complemento': '- até 214/215',
}
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 dos Correios:
>>> from pycep_correios import get_address_from_cep, WebService
>>> 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.
Exemplo de consulta ao serviço ViaCEP:
>>> from pycep_correios import get_address_from_cep, WebService
>>> get_address_from_cep('37503-130', webservice=WebService.VIACEP)
Exemplo de consulta ao serviço ApiCEP:
>>> from pycep_correios import get_address_from_cep, WebService
>>> get_address_from_cep('37503-130', webservice=WebService.APICEP)
Retorno e Exceptions
Independente do serviço escolhido, o formato de resposta sempre será o mesmo:
{
'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-2021 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.0.0rc0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6e7ac435b7cca6c2a05e26393497839b8c01101c0554110e1481b5abdc0a5d5 |
|
MD5 | 157796ae56950acd409ea31a38458d7c |
|
BLAKE2b-256 | 45c401c353a47e295b3367ddceb9aa78691a6054cad6bcc322e0267e3b9a9ed6 |