页面加载后从TWebBrowser检索AJAX内容

时间:2016-08-30 13:21:23

标签: ajax delphi twebbrowser

我目前正在使用此代码以字符串检索内容>它是由TWebBrowser呈现的,您可以看到它显示通过AJAX动态加载的内容:

function TMyViewerIE.GetDocumentAsStr: string;
begin
if Assigned(FWebBrowser.Document) then
  begin
    iall := (FWebBrowser.Document AS IHTMLDocument2).body;
    while iall.parentElement <> nil do
    begin
      iall := iall.parentElement;
    end;
    Result := iall.outerHTML;
  end
;
end;

但是,此代码似乎不包含AJAX执行的更改。

注意:对于那些认为上述代码“脱离上下文”的人,请参阅此SO,其中建议将此代码的变体作为解决方案:

Delphi TWebBrowser get HTML source after AJAX load

问题是它对我不起作用。我以为上面会工作,因为(再次我认为)AJAX改变了内部文档结构,这就是保存的内容。

也许我错过了一些东西 - 如果有人知道答案,我会很感激。我还将继续自己的研究并发布结果。

注意:我可以尝试构建一个AJAX页面(或公共/政府页面),这样我就可以更轻松地共享我的测试用例。我相信这将满足有关工作实例的建议。

0 个答案:

没有答案