Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 456751
            [titulo] => Consultar placa de veiculo no site do Detran
            [dataCadastro] => DateTime Object
                (
                    [date] => 2013-09-26 12:04:26
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 173285
            [status] => A
            [isExample] => 
            [NomeUsuario] => Gustavo Bretas
            [Login] => gustavobretas
            [Apelido] => Bretas
            [Foto] => 173285_20151210133051.jpg
            [Conteudo] => Não teve ação por que o Yamazack não disse o site que ele tratou, acredito que ele tenha postado com intuito didático, o famoso "Caminho das Pedras"...
        )

)

Consultar placa de veiculo no site do Detran

Rafael Cruz
   - 23 set 2013

Olá, tenho um cliente Transportador e ele quer que ao cadastrar um veículo novo, somente digite a placa e a partir dela faça uma consulta no site do detran e traga os demais dados preenchidos no form.
Alguém sabe se é possível? Se sim, como proceder.. Obrigado

Post mais votado

Bretas
   - 26 set 2013

Não teve ação por que o Yamazack não disse o site que ele tratou, acredito que ele tenha postado com intuito didático, o famoso "Caminho das Pedras"...

Marcão
   - 24 set 2013

Rafael, procurei na internet sobre a sua necessidade, e não encontrei nada.
Até onde eu saiba, o Detran não disponibiliza nenhum WebService para esse tipo de consulta.
Não quero te desanimar, mas acho que isso não é possível.
O que você pode fazer para ter certeza é entrar em contato direto com o Detran.

Att,

Marcos

Joel Rodrigues
   - 24 set 2013

Creio que não seja possível, pois até para consultar direto no site do Detran é preciso informar a placa e o renavan. O DETRAN não deve disponibilizar esse tipo de consulta, pois expõe dados sensíveis.
Acho que esse sonho do cliente você não vai poder realizar.

Bretas
   - 24 set 2013

Depende do que o Detran da região que vc quer consultar disponibiliza pra consulta!

Por exemplo, o Detran aqui de MT, vc consegue consultar alguns dados do veículo usando a url: http://internet.detrannet.mt.gov.br/ConsultaVeiculo.asp?Placa=&NUMPLACA&Renavam=&NUMRENAVAM, que no seu caso para importar os dados, teria que tratar o HTML gerado pra capturar as informações!

Rafael Cruz
   - 24 set 2013

Esse cliente usa um programa da seguradora dele que faz essa pesquisa.. Certamente não é delphi mas achei que pudesse haver pra delphi tbm..
Enfim, obrigado

Joel Rodrigues
   - 24 set 2013

A questão não é nem ser Delphi ou não, mas sim como ele consegue essas informações. Se for de um web service, você pode acessar pelo Delphi, C#, PHP, etc. O "problema" é saber qual é esse serviço que fornece as informações.

Yamazack
   - 24 set 2013

Senhores, há um bom tempo eu fiz algo similar, mas foi meio 'tenso', o que eu fiz (não tenho o código mais pois perdi o HD do note na época).

Usando um Web Browser, eu abria o site do detran pelo programa em Delphi, em um edit, ele digitava a placa do carro, e esta info ia para o Web Browser, dai era só digitar o captcha e eu conseguia pegar os dados do veiculo, mas tudo via Web Browser/HTML.

Infelizmente não tenho o código, só a logica e como eu fiz e tal..

Um abraço

Joel Rodrigues
   - 24 set 2013

Tem que ver qual é o DETRAN, pois alguns pedem além da placa, o Renavan, então esse esquema de abrir a página em web browser ou fazer uma requisição e tratar o HTML não funcionaria só com a placa.

Rafael Cruz
   - 24 set 2013


Citação:
Senhores, há um bom tempo eu fiz algo similar, mas foi meio 'tenso', o que eu fiz (não tenho o código mais pois perdi o HD do note na época).

Usando um Web Browser, eu abria o site do detran pelo programa em Delphi, em um edit, ele digitava a placa do carro, e esta info ia para o Web Browser, dai era só digitar o captcha e eu conseguia pegar os dados do veiculo, mas tudo via Web Browser/HTML.

Infelizmente não tenho o código, só a logica e como eu fiz e tal..

Um abraço


Exatamente isso que eu estou procurando..
Uma pena voce nao ter mais o codigo

Yamazack
   - 24 set 2013

Rafael, achei apenas um backup do .pas que eu havia feito na época, estou desde a hora que comentei aqui buscando isso pra ti, consegui achar, não sei se adianta e tal, mas lá vai :)

#Código
unit uFrmPrincipal;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, OleCtrls, SHDocVw, Buttons,
UrlMon, ShellAPI, WinInet, ActiveX, ComObj, ComCtrls;

type
TForm2 = class(TForm)
WebBrowser1: TWebBrowser;
Panel1: TPanel;
Edit1: TEdit;
BitBtn1: TBitBtn;
Panel2: TPanel;
EdtRenavam: TLabeledEdit;
CbxAno: TComboBox;
Label1: TLabel;
BitBtn2: TBitBtn;
Memo1: TMemo;
BitBtn3: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
function PreencherForm(WebBrowser: TWebBrowser; FieldName,
Value: string): Boolean;
{ Private declarations }
public
{ Public declarations }
end;

var
Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.BitBtn1Click(Sender: TObject);
begin
{Personalizar WEBBrownser}
with WebBrowser1 do
begin
OleObject.document.body.Style.scrollbarFaceColor := '#FF6699';
OleObject.Document.body.Style.scrollbarTrackColor := '#CCCC99';
OleObject.document.body.Style.scrollbarHighlightColor := '#99FF99';
OleObject.document.body.Style.scrollbar3DLightColor := '#6699CC';
OleObject.Document.body.Style.scrollbarShadowColor := '#6600FF';
OleObject.document.body.Style.scrollbarDarkShadowColor := '#00CC66';
OleObject.document.body.Style.scrollbarArrowColor := '#336699';
end;
end;

procedure TForm2.BitBtn2Click(Sender: TObject);
begin
EdtRenavam.Text := '77777777';
PreencherForm(WebBrowser1, 'txtRenavam',EdtRenavam.Text );
WebBrowser1.Navigate( 'javascript:document.forms["formPrincipal"].submit();' );
end;

procedure TForm2.BitBtn3Click(Sender: TObject);
begin
WebBrowser1.OleObject.Document.Body.Style.OverflowX := 'hidden';
WebBrowser1.OleObject.Document.Body.Style.OverflowY := 'hidden';
end;

procedure TForm2.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate( Edit1.Text);

end;

function TForm2.PreencherForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean;
var
i, j, k: Integer;
Element, SubElement, FormItem: Variant;
child, child2, child3: TTreeNode;
root: TTreeNodes;
begin
Result := False;
//no form on document
if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then
begin
Exit;
end;
//count forms on document
for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do
begin
FormItem := WebBrowser.OleObject.Document.forms.Item(I);

for j := 0 to FormItem.Length - 1 do
begin
try
//when the fieldname is found, try to fill out
//Memo1.lines.add(FormItem.Item(j).Name);

if FormItem.item(J).Type = 'select-one' then
begin
FormItem.Item(j).Value := '00';
end;
{for k := 0 to FormItem.item(J).Options.Length - 1 do
begin
//Memo1.lines.add(FormItem.Item(j).Options.Index[k].Value);
//FormItem.item(J).Options.Index := 1;
//FormItem.item[j].Options.selectedIndex := 1;
end; }

if FormItem.Item(j).Name = FieldName then
begin
FormItem.Item(j).Value := Value;
Result := True;
end;
except
// Exit;
end;
end;
end;
end;

end.



Forte abraço e boa sorte!

Rafael Cruz
   - 25 set 2013

Yamazack, em que versão do Delphi voce fez seu codigo?

Rafael Cruz
   - 26 set 2013

?

Bretas
   - 26 set 2013

Rafael, que diferença faz a versão do Delphi? De acordo com a declaração do formulário, só tem componentes nativos do Delphi!

Para desencargo de consciência, eu compilei o código aqui no Delphi XE, não sei se funciona, mas compila!

Rafael Cruz
   - 26 set 2013

É, já percebi..
Enfim, compilou mas não teve ação nenhuma nos clicks do botão..

Joel Rodrigues
   - 26 set 2013

Se é de usar um WebBrowser, não seria melhor utilizar um esquema como o que o Bretas citou anteriormente? Fazendo uma requisição e tratando o HTML?

Rafael Cruz
   - 26 set 2013

É que o de SP não fornece os dados igual o de MT que ele postou..
Achei um site : http://denatran.serpro.gov.br/index2.htm
Estou pesquisando uma rotina pra pegar o html e jogar nos edits...

Yamazack
   - 08 out 2013

Opa Rafael Cruz, o exemplo foi feito com a navegação no site do Detran do RJ, na época que fiz este código eles tinham essa estrutura e tal. o que você tem que se atentar é como eu fiz, e não o link, até pq vc não irá usar o mesmo link que o meu. Como o Bretas disse, foi apenas para fins didáticos, sacou?

vc precisará adaptar de acordo com sua necessidade, no caso, você entendeu o código?

abs

Rafael Corazzi
   - 15 mai 2014

Quais informacoes voce precisa
eu fiz uma dll que pega dados do site SINESP CIDADAO
la tem a placa , marca/modelo do automovel , ano, situacao (roubado ou sem restricao) e os 4 ultimos digitos do CHASSI do auotomovel
tenho altos conhecimentos em desenvolvimentos de Robos , assim como quebra de captcha

Abracos

Ricardo
   - 15 mai 2014

Sim é possível! Trabalhei na Companhia de Trânsito da minha cidade por alguns anos e deixei o cargo no fim do ano passado.

Um dos sistemas desenvolvidos por mim, tem essa opção e para poder implementar é preciso o manual de layouts do DETRAN, e ele é nacional. Se conseguir esse manual pode-se fazer muitas aplicações que utilizem recursos do DETRAN.

Sei que a intenção desse fórum e trocar informações e conhecimentos entre seus usuários, afim de ajudar uns aos outros, mas antes de alguém perguntar já deixo a resposta; Infelizmente não posso passar informações sobre os layouts.

Jameson Leal
   - 07 jun 2014

Olá Rafael, poderia disponibilizar o exemplo da dll? Estou tentando fazer a comunicação com o site da SINESP CIDADÃO mas estou com dificuldades. Desde já, grato.

Rafael Corazzi
   - 11 jun 2014

Desenvolvi uma aplicacao que pega dados do SINESP CIDADAO
la vem PLACA, ANO, MARCA E MODELO do Veiculo e a situacao se e furtado ou nao. alem do estado e municipio do veiculo..

Se precisar mande um email

rafael.corazzi@hotmail.com