如何从webbrowser.document获取整个html

如何从webbrowser.document获取整个html,html,vb.net,Html,Vb.net,如果dw1()返回webbrowser.document,我知道我可以做: dw1.body.outerhtml 来获取身体的外层。就是这样,身体,头球等等 如果我想获取整个文档的html,该怎么办?如果您可以访问webbrowser控件,则可以使用DocumentText属性: Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handl

如果dw1()返回webbrowser.document,我知道我可以做:

dw1.body.outerhtml
来获取身体的外层。就是这样,身体,头球等等


如果我想获取整个文档的html,该怎么办?

如果您可以访问webbrowser控件,则可以使用
DocumentText
属性:

Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
    MessageBox.Show(WebBrowser1.DocumentText) 
End Sub

这并不是万能的。如果在创建DocumentText后进行InnerHTML更改(例如),则只能获得原始DocumentText。OuterHTML会捕获更改,但您只能获取BODY标记内的内容。WebBrowser1.DocumentText不是确保从WebBrowser1.Document内获取所有HTML的好方法。这是因为有多种方法可以添加和更改不更新WebBrowser1.DocumentText的实时HTML数据。为了确保获得实时数据中的每一位代码,请将代码中最外层的标记作为目标,并获取其间的所有内容。这通常是HTML标记。改为使用-WebBrowser1.Document.GetElementsByTagName(“HTML”).Item(0).OuterHtml。我已经在另一个问题中回答了这个问题,所以我的答案被删除了,但我想确保你得到了它。