请问在delphi中怎样得到网页的内容?(100分)

  • 主题发起人 主题发起人 jbas
  • 开始时间 开始时间
J

jbas

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在有一个连接例如: http://localhost:8080/myapp/a.jsp
现在我想用delphi去连接这个地址,并得到这个页面显示的值,请问用什么控件,我不想先用twebbrowser去连这个页面,再去得到这个页面的值,请问用什么其它的控件,可以实现这个。
谢谢了!
 
用TIdHTTP
showmessage(IdHTTP2.Get('http://www.baidu.com'))
 
用zbird说的TIdHTTP经常会请求不到网页.还是用WebBrowser可靠一些.给你看下例子.如下.



unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleCtrls, SHDocVw;

type
TForm1 = class(TForm)
WebBrowser1: TWebBrowser;
Button1: TButton;
Memo1: TMemo;
procedure WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
var
HtmlCode: String;
begin
if (pdisp as IWebBrowser2).Document = WebBrowser1.Document then //初始化成功后执行
begin
Memo1.text := WebBrowser1.oleobject.Document.Body.InnerHTML; //获取网页html源码
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://www.niudun.net'); //载入http://www.niudun.net
end;

end.
 
谢谢各位的回答,因为我的页面是加了ssl的,用IdHTTP好像比较麻烦,我直接用twebbrowser了。
 
多人接受答案了。
 
后退
顶部