vb.netwebview2

VB.Net Webview2 How can I get html source code?


I sucessfully display a web site on WebView2 in my VB.net (Visual Studio 2017) project but can not get html souce code. Please advise me how to get html code.

My code:

Private Sub testbtn_Click(sender As Object, e As EventArgs) Handles testbtn.Click
        WebView2.CoreWebView2.Navigate("https://www.microsoft.com/")
End Sub

Private Sub WebView2_NavigationCompleted(sender As Object, e As CoreWebView2NavigationCompletedEventArgs) Handles WebView2.NavigationCompleted
        Dim html As String = ?????
End Sub

Thank you indeed for your advise in advance.


Solution

  • I've only just started messing with the WebView2 earlier today as well, and was just looking for this same thing. I did manage to scrape together this solution:

    Dim html As String
    html = Await WebView2.ExecuteScriptAsync("document.documentElement.outerHTML;")
    
    ' The Html comes back with unicode character codes, other escaped characters, and
    ' wrapped in double quotes, so I'm using this code to clean it up for what I'm doing.
    html = Regex.Unescape(html)
    html = html.Remove(0, 1)
    html = html.Remove(html.Length - 1, 1)
    

    Converted my code from C# to VB on the fly, so hopefully didn't miss any syntax errors.