Preencher campos de um website
07/03/2009
0
Quiano
Posts
09/03/2009
Diegotiemann
acho que tenho a solução pra você, começei um projeto parecido mas acabei não terminando, mas essa parte de preencher o código de validação eu fiz, tenho os fontes em casa mas vou te dar os passos ba´sicso, qualquer coisa te mando o código na sexta feira.
Tem que usar TWebBroser,
1º Carregar a página no web broser, extair a imagem do webBroser
2º Exibir a imagem num TImage, junto de um Edit
3º pegar o testo digirtado no edit e preencher o campo de validação
4º Simular o clique do botão da página.
É bem complexo, a parte de validação nem cheguei a fazer, mas se prescisar posto o código aqui, mas lembre de deixar o post no topo na sexta feira.
09/03/2009
Rodc
http://forum.devmedia.com.br/search.php?mode=results
09/03/2009
Quiano
10/03/2009
Rodc
Mas dá uma olhada no código deste link que talvez lhe sirva: http://www.swissdelphicenter.ch/en/showcode.php?id=262
10/03/2009
Quiano
10/03/2009
Quiano
vou ver consigo mais alguma coisa vou postar o codigo e se alguem puder me ajudar eu agradeco.
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtrls, SHDocVw, StdCtrls; type TForm1 = class(TForm) Button1: TButton; WebBrowser1: TWebBrowser; // function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean; procedure WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); procedure WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean; var i, j: Integer; FormItem: Variant; begin Result := False; //no form on document FORM 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 if FormItem.Item(j).Name = FieldName then begin FormItem.Item(j).Value := Value; Result := True; end; except Exit; end; end; end; end; //When the document is complete try to fill out the field homepage with the url procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); begin if FillForm(WebBrowser1, ´txtCNPJ´, ´00364351000181´) = False then ShowMessage(´Error. Field not available or no Form found.´) else ShowMessage(´Escreveu´); end; // Show the Webbrowser-Progress in Label1 procedure TForm1.WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); begin if ProgressMax = 0 then begin // label1.Caption := ´´; Exit; end; try if (Progress <> -1) and (Progress <= ProgressMax) then // label1.Caption := IntToStr((Progress * 100) div ProgressMax) + ´¬ loaded...´ else //label1.Caption := ´´; except on EDivByZero do Exit; end; end; //For example you can load the page /en/addtip.php to the TWebBrowser //When the document is Complete the form where you can put your homepage //address is filled out procedure TForm1.Button1Click(Sender: TObject); begin Webbrowser1.Navigate(´https://www8.receita.fazenda.gov.br/SimplesNacional/controleacesso/autentica.aspx?id=5´); //Caption := Webbrowser1.OleObject.Document.Title; ShowMessage(´Terminou´); end; end.
10/03/2009
Diegotiemann
25/03/2009
Quiano
Vou tentar se conseguir eu posto aqui a solucao encontrada
29/03/2009
Flaviocont
30/03/2009
Quiano
20/08/2021
Elton
Cara estou com essa dúvida hoje, poderia disponibilizar para eu ver se resolver o meu problema?
20/08/2021
Elton
Tipo, não quero usar nenhum componente, nem WebBrowser e ne Chromium...
Tipo assim:
ShellExecute(Handle, 'open', 'https://www.google.com', nil, nil, SW_SHOWMAXIMIZED);
Ótimo, aqui abro a página (caso alguém precise)
Agora preciso pegar o campo loguin e senha que está na minha tabela e inserir nos campos da página!
Estou com esse problema para resolver, mas todos os exemplos que encontrei foi usando o WebBrowser, mas ele não funciona com as versões atuais do internet explore.
Ficarei muito grato caso alguém puder me ajudar ok
Abraço Galera.
Caso alguém tenha algum exemplo e puder me mandar segue meu email (elton@locsoft.com.br)
Clique aqui para fazer login e interagir na Comunidade :)