SINESP Client torna possível a consulta da base de dados do SINESP Cidadão sem a necessidade do preenchimento de captchas ou algum outro tipo de autenticação.
SINESP Cidadão é uma base de dados pública de veículos brasileiros. É muito útil para identificar carros ou motos roubados ou suspeitos.
Se um veículo com a placa especificada for encontrado, o servidor irá retornar as seguintes informações que serão repassadas através de um dicionário:
- return_code (código de retorno)
- return_message (mensagem de retorno)
- status_code (código do status)
- status_message (mensagem do status)
- chassis (chassi do veículo)
- model (modelo/versão)
- brand (marca/fabricante)
- color (cor/pintura)
- year (ano de fabricação)
- model_year (ano do modelo)
- plate (placa)
- date (data e hora da consulta)
- city (cidade)
- state (estado ou unidade federativa)
Não sabemos o porquê, mas o governo não mantém uma API pública para este serviço. A única maneira de acessar os dados é acessando o site do SINESP e respondendo a perguntas de verificação (captchas) para cada uma das requisições.
Felizmente as aplicações para Android e iOS permitem que a busca seja feita sem que seja preciso responder a nenhum teste captcha. Nós então fizemos uma engenharia reversa no aplicativo para que pudéssemos ter acesso a essas informações públicas sem que fosse preciso responder a esses captchas chatos.
Através do PyPI
pip install sinesp-client
Ou a partir do código-fonte
python setup.py install
from sinesp_client import SinespClient
sc = SinespClient()
result = sc.search('ABC1234')
O SINESP pode bloquear conexões vindas de fora do país. Se acontecer de você estar enfrentando problemas de conexões você pode tentar utilizar um web proxy (SOCKS5), que podem ser encontrados gratuitamente na Internet.
from sinesp_client import SinespClient
sc = SinespClient(proxy_address='127.0.0.1', proxy_port=8080)
result = sc.search('ABC1234')
Nota: Utilize valores de endereço e porta válidos.
Atendendo a diversos pedidos que vêm chegando por e-mail, neste artigo na Wiki do projeto ensino a chamar um script simples feito em Python, que retorna os dados obtidos em formato JSON, e a acessar os dados obtidos através do PHP.
O livre acesso a esses dados públicos permite que diversas aplicações sejam desenvolvidas, muitas delas com um potencial benefício social envolvido como retorno. Ajude a contribuir com o projeto:
- Faça uma doação
- Contribua com o código-fonte
- Se você for o governo, por favor, libere uma API pública para nós brasileiros
- Victor Torres @victor-torres
- Giovani Generali @giovanigenerali
- Francesco Perrotti-Garcia @fpg1503