【发布时间】:2015-07-24 02:30:06
【问题描述】:
我有一个控制台应用程序,我用它从网站下载 HTML 并将这个 HTML 与我在 blob 中的另一个进行比较。为此,我使用来自Windows Forms 的WebBrowser 组件。当我在我的机器上运行应用程序时一切正常,但是当我迁移控制台应用程序以在其他机器上运行时,在运行时下载的HTML 在某些方面是不同。例如:
在blob 的基础HTML 中,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.
}
【问题讨论】:
-
您是否在不同的机器上使用相同的浏览器?不同的浏览器会产生不同的 HTML 输出。
-
@MC10 我不知道,因为我只是在没有指定浏览器的情况下实例化 WebBroser 组件。我如何检查它?
-
糟糕,没关系。你没有使用浏览器。至于为什么在不同的机器上使用WebBrowser控件时会有所不同,我不确定。也许它以不同的方式呈现它。这个链接可能有一些很好的信息:blogs.msdn.com/b/patricka/archive/2015/01/12/…