通过C#中的WebBrowser控件获取HTML源代码
我尝试以下列方式获取HTML Source:
webBrowser1.Document.Body.OuterHtml;
但它不起作用。 例如,如果原始HTML源是:
但webBrowser1.Document.Body.OuterHtml
的输出是:
如你所见,许多
都丢失了。
有没有办法正确地在WebBrower
控件中获取HTML源代码? 请注意,在我的应用程序中,我尝试使用WebBrowser
向每个节点添加坐标信息,并使用坐标信息输出其HTML源,该坐标信息作为节点的属性添加。
任何人都可以帮我一个忙吗?
尝试使用DocumentText或DocumentStream属性。
谢谢你们。 我的最终解决方案是:首先,使用body.outlineHtml
获取html源代码。 因为body.outlineHtml可能会错过
和
结束标记,所以第二步是使用整洁来修复HTML源代码。 在这些之后,我们可以毫无错误地获取HTML源代码
你试过WebBrowser1.DocumentText
吗?
如果你想获取WebBrowser控件的整个HTML源代码,那么使用它 – WebBrowser1.Document.GetElementsByTagName(“HTML”)。Item(0).OuterHtml。 当然,这假设您具有格式正确的HTML并且HTML标记存在。 如果您想将其缩小到仅仅是正文,那么显然将HTML标记更改为BODY标记。 这样,您可以在设置“DocumentText”后抓取任何和所有更改。 对不起,我是一个VB人,根据需要进行转换;)
看看这个。 MSDN上的WebBrowser
另外你可以使用System.Net中的Webclient.DownloadString
(它也有WebClient.DownloadStringAsync
…)这是描述: MSDN上的WebClient