我正在使用 C# 创建一个 UWP 应用程序。该应用程序应该从网站获取信息并将其呈现给用户。我已经浏览了该网站的 DOM 并成功下载了该网站的 HTML。但有些信息是隐藏的,只有在网站上进行某些按钮或选择时才会显示。有没有一种方法可以让我以编程方式进入该网站,进行选择,然后下载新的 html?
第二个问题:应用程序应该有一个链接到 Facebook 页面的 Facebook LiveChat 功能。如何将 facebook liveChat 链接到此应用程序?我脑子里不知道如何让这项工作发挥作用。谢谢你的帮助。
以下是在搜索框中输入文本并单击 Bing 中的搜索按钮的示例
-
Use WebView https://learn.microsoft.com/en-us/uwp/api/Windows.UI.Xaml.Controls.WebView做所有的工作
WebView webView = new WebView();
-
Use WebView 的方法使用JS代码
webView.InvokeScriptAsync("eval", new string[] {});
-
获取 HTML使用以下代码的网站
public LoadURI()
{
webView.Navigate(new Uri("https://www.bing.com/"));
webView.NavigationCompleted += webView_NavigationCompletedAsync;
}
string siteHtML = null;
private async void webView_NavigationCompletedAsync(WebView sender, WebViewNavigationCompletedEventArgs args)
{
siteHtML = await webView.InvokeScriptAsync("eval", new string[] { "document.documentElement.outerHTML;" });
}
-
输入文字在搜索框中使用以下代码
private async void EnterTextAsync(string enterText)
{
var functionString = string.Format(@"document.getElementsByClassName('b_searchbox')[0].innerText = '{0}';", enterText);
await webView.InvokeScriptAsync("eval", new string[] { functionString });
}
-
模拟点击使用下面的代码
private async void SimulateClickAsync()
{
var functionString = string.Format(@"ddocument.getElementsByClassName('b_searchboxSubmit')[0].click();");
await webView.InvokeScriptAsync("eval", new string[] { functionString });
}
- 使用获取新网站的 HTMLStep 3
以下是登录 StackOverflow 的示例应用程序:StackOverFlow-登录 https://github.com/Vijay-Nirmal/StackOverFlow-LogIn
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)