X
xiaoshou
Unregistered / Unconfirmed
GUEST, unregistred user!
三个页面依次进入
第一页面嵌套了多个frames-->第二个页面没有frames-->第三个页面也是多个frames
用webbrowser可以读取第一页面的frames的源码,请问如何获取第三个页面的frames的html源码?
第一个页面可以通过一下函数实现
procedure TForm1.Button4Click(Sender: TObject);
var
IpStream: IPersistStreamInit;
AStream: TMemoryStream;
iw: IWebbrowser2;
i: Integer;
sl: TStringList;
begin
memo1.Lines.Clear;
for i := 0 to webbrowser1.oleobject.document.frames.length - 1 do
begin
showmessage(inttostr(i));
iw := GetFrame(i);
AStream := TMemoryStream.Create;
try
IpStream := iw.document as IPersistStreamInit;
if Succeeded(IpStream.save(TStreamadapter.Create(AStream), True)) then
begin
AStream.Seek(0, 0);
memo1.Lines.LoadFromStream(AStream);
sl.Free;
end;
except
end;
AStream.Free;
end;
end;
但是进入第三个页面,无法获得frames的html码!请高手指点!
第一页面嵌套了多个frames-->第二个页面没有frames-->第三个页面也是多个frames
用webbrowser可以读取第一页面的frames的源码,请问如何获取第三个页面的frames的html源码?
第一个页面可以通过一下函数实现
procedure TForm1.Button4Click(Sender: TObject);
var
IpStream: IPersistStreamInit;
AStream: TMemoryStream;
iw: IWebbrowser2;
i: Integer;
sl: TStringList;
begin
memo1.Lines.Clear;
for i := 0 to webbrowser1.oleobject.document.frames.length - 1 do
begin
showmessage(inttostr(i));
iw := GetFrame(i);
AStream := TMemoryStream.Create;
try
IpStream := iw.document as IPersistStreamInit;
if Succeeded(IpStream.save(TStreamadapter.Create(AStream), True)) then
begin
AStream.Seek(0, 0);
memo1.Lines.LoadFromStream(AStream);
sl.Free;
end;
except
end;
AStream.Free;
end;
end;
但是进入第三个页面,无法获得frames的html码!请高手指点!