如何获取在IWebBrowser2中加载的页面源?

时间:2014-03-25 17:07:40

标签: c++ internet-explorer bho

从Internet Explorer中的BHO(浏览器帮助程序对象),当我有IWebBrowser2界面时,如何获取当前在Web浏览器中加载的页面的完整源代码?

我是否必须从它所在的网址再次下载它,或者是否有办法获取Internet Explorer下载并用于呈现网页的副本?

我尝试获取当前文档的html元素的outerHTML,但它返回已经预处理的源代码。我需要以你在查看时所看到的相同形式获得它#34;查看源代码"在Internet Explorer中。

感谢您提供任何有用的信息!!!

1 个答案:

答案 0 :(得分:2)

您可以在浏览器的Document属性中查询IPersistStreamIPersistFile,然后调用其Save()方法。但是当在浏览器中查询其HTML时,您很可能会获得已处理的 HTML,其中可能包含来自脚本的DOM更改。

要获取原始 HTML,您应该直接从源URL下载它,或者至少从浏览器的本地缓存中提取文件。