从Chromium Embedded获取HTML源码

8

如何使用 Delphi Chromium 嵌入式组件实现此功能,我知道如何使用 TWebBrowser 实现此功能。但由于没有相关文档,我相信其他人也遇到了同样的问题。

谢谢。

2个回答

8

以下是操作方法:

procedure TCustomLoad.OnLoadEnd(const browser: ICefBrowser;
  const frame: ICefFrame; httpStatusCode: Integer);
  var
  data:tstringlist;
begin
  data:=tstringlist.create;
  if frame.IsMain then
  data.text:=frame.Source; // HTML Source    
end;
  data.free;
end;

7

在DCEF 3中

procedure StringVisitor(const str: ustring);
begin
  //str is the SourceHtml
showmessage(str);
end;

function GetSourceHTML: string;
var
CefStringVisitor:ICefStringVisitor;
begin
  CefStringVisitor := TCefFastStringVisitor.Create(StringVisitor);
  Chromium1.Browser.MainFrame.GetSource(CefStringVisitor);
end;

警告:StringVisitor过程被异步调用。 - Stéphane B.
1
@STBLand 在这种情况下,似乎页面已经重新加载。如何在不重新加载页面的情况下获取源代码? - delphirules

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接