Web浏览器在不同的计算机上获得相同的HTML

时间:2015-07-23 18:11:22

标签: c# html .net winforms

我有一个控制台应用程序,我用它从网站下载HTML并将此HTMLblob中的另一个进行比较。为此,我使用WebBrowser中的Windows Forms组件。当我在我的机器上运行应用程序时,一切正常,但是当我将控制台应用程序迁移到其他计算机上运行时,运行时下载的HTML 不同一些方面。例如: 在我HTML上的基数blob中,element是这样的:

<FORM><INPUT id=ni value=Test type=hidden name=ni>

如果我在我的机器上运行,HTML元素在浏览器下载的文档中是等效的,但在另一台机器中,元素是这样的:

<FORM><INPUT id=ni type=hidden value=Test name=ni>

正如您所看到的,属性的顺序不同。这对我来说不是一个相关的改变,但我想知道为什么会发生这种情况,如果它是在两台机器上运行的相同程序?

代码:

 private void OnDocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
 { 
     var html = _browser.Document.Body.InnerHtml;
     //This is getting different.
 }

1 个答案:

答案 0 :(得分:1)

.Net中的WebBrowser使用计算机上安装的IE版本。可能是您获得的页面因浏览器的用户代理而异。只需在两台机器上打开IE浏览器并查看页面来源,确认不是导致差异的代码。