如何在执行关联的JavaScript后获取页面的源HTML?

时间:2015-09-03 09:37:48

标签: javascript delphi indy idhttp

在这个问题上有一些帖子很安静,但似乎没有真正回答我的问题。

我使用TIdHttp加载本网站的源代码: http://www.nationalgeographic.com/

我尝试提取一些数据,但意识到数据是由脚本生成的。源代码中有一个脚本,还有一些指向外部js文件的链接。

我怎么可能在页面上运行部分或全部脚本并生成源代码?

我在辅助线程中使用此部分,并希望避免使用WebBrowser组件。

我可以从Idhttp生成的源代码中提取脚本或链接,但运行带有idhttp.get(*.js)的js文件,但我认为这可能太简单了。

1 个答案:

答案 0 :(得分:1)

最后,答案非常基础:

document := webBrowser.Document as IHTMLDocument2; result := document.body.innerHTML;

检索源代码并包含脚本在运行时动态生成的内容。