视窗 8:
您可以通过以下方式获取 WebView 页面内容:
private void webView_LoadCompleted_1(object sender, NavigationEventArgs e)
{
WebView webView = sender as WebView;
string html = webView.InvokeScript(
"eval",
new string[] {"document.documentElement.outerHTML;"});
// Here you can parse html ....
}
Windows 10 更新:
InvokeScript()
在 Windows 10 中引发以下异常:
App1.exe 中出现“System.NotImplementedException”类型的异常,但未在用户代码中处理
附加信息:方法或操作未实现。
改为使用InvokeScriptAsync()
。
XAML:
<WebView Source="http://kiewic.com" LoadCompleted="WebView_LoadCompleted"></WebView>
C#:
private async void WebView_LoadCompleted(object sender, NavigationEventArgs e)
{
WebView webView = sender as WebView;
string html = await webView.InvokeScriptAsync(
"eval",
new string[] { "document.documentElement.outerHTML;" });
// TODO: Do something with the html ...
System.Diagnostics.Debug.WriteLine(html);
}