Uzyskaj ostateczne wygenerowane źródło html przy użyciu c # lub vb.net
używając VB.net lub c #, Jak uzyskać wygenerowane źródło HTML?
Aby uzyskać źródło html strony, mogę użyć tego poniżej, ale to nie spowoduje wygenerowania źródła, nie będzie zawierać żadnego kodu HTML, który został dodany dynamicznie przez javascript w przeglądarce. Jak uzyskać ostateczne wygenerowane źródło HTML?
dzięki
WebRequest req = WebRequest.Create("http://www.asp.net");
WebResponse res = req.GetResponse();
StreamReader sr = new StreamReader(res.GetResponseStream());
string html = sr.ReadToEnd();
jeśli spróbuję tego poniżej, to zwraca dokument bez wstrzykniętego kodu JavaScript
Public Class Form1
Dim WB As WebBrowser = Nothing
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
WB = New WebBrowser()
Me.Controls.Add(WB)
AddHandler WB.DocumentCompleted, AddressOf WebBrowser1_DocumentCompleted
WB.Navigate("mysite/Default.aspx")
End Sub
Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs)
'Dim htmlcode As String = WebBrowser1.Document.Body.OuterHtml()
Dim s As String = WB.DocumentText
End Sub
End Class
Zwrócono kod HTML
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div id="center_text_panel">
//test text this text should be here
</div>
</form>
</body>
</html>
<script type="text/javascript">
document.getElementById("center_text_panel").innerText = "test text";
</script>