quot;Pegarquot; dados de uma página na web.
Acesso uma página da web, que retorna informações de status em formato de uma tabela, ex :
codigo situacao
001 concluida
002 pendente
...
Queria armazenar isso em um banco de dados, ou em uma variavel de forma automática. Como sou meio leigo em delphi, se alguem puder me ajudar...
codigo situacao
001 concluida
002 pendente
...
Queria armazenar isso em um banco de dados, ou em uma variavel de forma automática. Como sou meio leigo em delphi, se alguem puder me ajudar...
Yanomami
Curtidas 0
Respostas
Rodc
29/09/2004
Forma automática não tem, mas você pode usar a função abaixo que pega todo o Texto da página TWebBrowser. Depois é só questão de tratar as informações e colocá-las no banco.
[color=darkred:7ee53f8ddd]var
document: IHTMLDocument2;
begin
document := urlBrowser.Document as IHTMLDocument2;
if Assigned(document) then
begin
mTexto.Text := document.body.innerText;
end;
end;[/color:7ee53f8ddd]
[color=darkred:7ee53f8ddd]var
document: IHTMLDocument2;
begin
document := urlBrowser.Document as IHTMLDocument2;
if Assigned(document) then
begin
mTexto.Text := document.body.innerText;
end;
end;[/color:7ee53f8ddd]
GOSTEI 0
Yanomami
29/09/2004
Estou usando o delphi 5...tem como passar um exemplo..
Obrigado.
Obrigado.
GOSTEI 0
Rodc
29/09/2004
Crie uma nova aplicação, coloque um WebBrowser (paleta Internet), um Memo e um botão no Form.
Substitua todo o código pelo abaixo e faça os links do FormCreate e do Botão.
[color=darkred:ae92e87d80]unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, OleCtrls, SHDocVw;
type
TForm1 = class(TForm)
WebBrowser1: TWebBrowser;
Memo1: TMemo;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses ActiveX;
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate(´http://www.uol.com.br´);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Text := WebBrowser1.OleObject.Document.documentElement.innerText
end;
initialization
OleInitialize(nil);
finalization
OleUninitialize;
end.[/color:ae92e87d80]
Substitua todo o código pelo abaixo e faça os links do FormCreate e do Botão.
[color=darkred:ae92e87d80]unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, OleCtrls, SHDocVw;
type
TForm1 = class(TForm)
WebBrowser1: TWebBrowser;
Memo1: TMemo;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses ActiveX;
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate(´http://www.uol.com.br´);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Text := WebBrowser1.OleObject.Document.documentElement.innerText
end;
initialization
OleInitialize(nil);
finalization
OleUninitialize;
end.[/color:ae92e87d80]
GOSTEI 0
Yanomami
29/09/2004
Rodc,
Agradeço pela ajuda, funcionou perfeitamente...
Um bom dia.
Agradeço pela ajuda, funcionou perfeitamente...
Um bom dia.
GOSTEI 0
Emir Neto
29/09/2004
E para enviar dados para um formulário on-line???
GOSTEI 0
Rodc
29/09/2004
O que seria um formulário On-Line? Dê exemplo.
GOSTEI 0
Emir Neto
29/09/2004
Ex: um formulário de determinado site que tenha os campos nome, telefone e cidade.
Eu voi e digito no meu programa os mesmos dados e quando clico no botão ok ele envia para o site os dados e sou cadastrado lá.
Eu voi e digito no meu programa os mesmos dados e quando clico no botão ok ele envia para o site os dados e sou cadastrado lá.
GOSTEI 0
Rodc
29/09/2004
Se o site aceita parâmetros você pode passar no link do site, por exemplo
[color=darkred:85301e7c8a]WebBrowse1.Navigate(´http://www.google.com.br/search?hl=pt-BR&q=texto_pesquisa´);[/color:85301e7c8a]
mas caso o site não tenha esta opção, aí vc pode estar preenchendo os campos usando o código do site http://www.swissdelphicenter.ch/en/showcode.php?id=262
Neste código pode ser implementado também o evento do clique no botão. Basta achar o componente do botão e fazer
[color=darkred:85301e7c8a]FormItem.Item(j).Click;[/color:85301e7c8a]
[color=darkred:85301e7c8a]WebBrowse1.Navigate(´http://www.google.com.br/search?hl=pt-BR&q=texto_pesquisa´);[/color:85301e7c8a]
mas caso o site não tenha esta opção, aí vc pode estar preenchendo os campos usando o código do site http://www.swissdelphicenter.ch/en/showcode.php?id=262
Neste código pode ser implementado também o evento do clique no botão. Basta achar o componente do botão e fazer
[color=darkred:85301e7c8a]FormItem.Item(j).Click;[/color:85301e7c8a]
GOSTEI 0
Emir Neto
29/09/2004
o evento do botâo é post, logo imaginei que haveria alguma forma de utilizar um componente do delphi. Você conhece algum que direcione o site e envie os dados de 2 edits e um memo????
GOSTEI 0
Psycho
29/09/2004
Neste exemplo você está pegando dados da página,
Mais como entrar em um sistema de login user/senha?
Mais como entrar em um sistema de login user/senha?
GOSTEI 0