我在抓网页,当我在带有IE 8的Windows XP机器上运行我的刮刀应用程序时(它是Windows XP支持的最大版本),它返回webBrowser.Body.OuterHtml中的不同HTML源,而不是在Windows 7上运行时用IE9。有谁知道如何从webbrowser控件中修改未修改的原始HTML?我知道IE修改HTML所以我想知道如何获取从Web服务器返回的原始html。这很麻烦,因为我在我的Windows 7开发盒上编写了刮刀,然后当我在Windows XP盒子上托管它时它将无法工作。如果您回答不要告诉我使用WebClient并下载页面,我想轻松支持浏览页面,而不必担心webbrowser控件处理的其他小网页内容。我使用webbrowser控件是有原因的。 webBrowser.DocumentText是否返回原始html或者这个仍然被修改的HTML是IE吗?
答案 0 :(得分:2)
从根本上说,你有两个相反的问题:
WebBrowser
“,但你实际上并没有告诉我们这是什么原因。)如果确实由于某种原因需要使用WebBrowser
,您可能需要两次获取每个页面:一次在浏览器中(以便它可以执行您需要的任何操作)和WebClient
一次(这样你就可以得到没有任何混乱的反应)。
也可能在浏览器控件中禁用脚本会执行您需要的所有操作 - 但是由于您没有首先使用浏览器控件的原因,这可能没有帮助......