5,388
社区成员
发帖
与我相关
我的任务
分享
procedure TForm1.Button1Click(Sender: TObject);
var
buf: array[0..1023] of Char;
I, J, K: Integer;
begin
TcpClient1.RemoteHost := 'www.baidu.com';
TcpClient1.RemotePort := '80';
TcpClient1.Connect;
buf :=
'GET / HTTP/1.1'+sLineBreak+
'UserAgent: Mozilla/3.0 (compatible)'+sLineBreak+
'Host: www.baidu.com'+sLineBreak+
'Connection: Close'+sLineBreak+
sLineBreak;
TcpClient1.SendBuf(buf, 256);
buf := '';
TcpClient1.ReceiveBuf(buf, 1024);
buf := '';
TcpClient1.ReceiveBuf(buf, 1024);
TcpClient1.Disconnect;
for I:=0 to 1023-5 do
if (buf[I]='<') and (buf[I+1]='t') and (buf[I+2]='i') and (buf[I+3]='t') and (buf[I+4]='l') and (buf[I+5]='e') then
for J:=I+6 to 1023-5 do
if buf[J]='>' then
for K:=J+1 to 1023-5 do
if buf[K]='<' then
begin
buf[K-(J+1)]:=#0;
ShowMessage(Utf8Decode(buf));
Exit
end else
buf[K-(J+1)]:=buf[K]
end;
procedure TForm1.itle1Click(Sender: TObject);
var
Document: IHTMLDocument2;
begin
WebBrowser1.Navigate('www.baidu.com');
while WebBrowser1.busy do
Application.ProcessMessages;
while WebBrowser1.ReadyState <> READYSTATE_COMPLETE do
Application.ProcessMessages;
Document := WebBrowser1.Document as IHTMLDocument2;
Caption := Document.title;
end;