delphi取得webbrowser网页所有框架内容源码

//如里对代码不能理解,请QQ我:QQ号:285856503

procedure TForm1.Button1Click(Sender: TObject);
var
doc2:IHTMLDocument2;
o : Olevariant;
ole_index: OleVariant;
frame_dispatch: IDispatch;
frame_win: IHTMLWindow2;
frame_doc: IHTMLDocument2;
i:integer;
doc,framedoc : IHTMLDocument2;
begin
//以下是分析网页框架内容的重要代码,通过分析框架内容可以取得各个网页控件的资料信息
doc := webBrowser1.Document as IHTMLDocument2;
if doc = nil then Exit;
memo1.Text:='';
for i := 0 to doc.frames.length - 1 do
begin
doc2 := WebBrowser1.Document as IHTMLDocument2;
ole_index:=i;;
frame_dispatch := doc2.Frames.Item(i);
if frame_dispatch <> nil then
begin
frame_win := frame_dispatch as IHTMLWindow2;
frame_doc := frame_win.document;
memo1.lines.add(IHTMLDocument2(frame_doc).body.outerHTML);
End;

//说明以下是:两个****************************************************************之间的内容为一个框架内容,把所有的内容加到Memo控件中进行显示
memo1.Text:=memo1.Text+ #13#10+'****************************************************************'+#13#10;
end;

//取得框架内容后,可以在Memo控件中数一下框架的索引位置,框架索引位置从0开始。Memo中两个****************************************************************之间的内容为一个框架内容
//取得框架索引后就可以按如下源代码对框架内的控件进行读写等操作
// o :=webBrowser1.oleobject.document.documentelement.document.frames.item(2).document.all.item('mbGxysf.xm',0);
//o.value:='test';

end;

相关文档
最新文档