Win10 UWP版HtmlAgilityPack,UWP應用使用示例下載。
Win10 發布了一個多星期,sdk是隨着一起發布的,我安裝好vs2015和sdk 開發UWP 通用程序。
在做網絡解析的時候,用nuget 安裝 HtmlAgilityPack 發現在UWP 通用程序里無法使用。
剛開始以為版本的問題,隨后更換了幾個版本號都發現無法使用。
然后到HtmlAgilityPack 官方開源地址:http://htmlagilitypack.codeplex.com/
下載源碼,放到win10 sdk 里面編譯,發現很多錯誤。發現win10sdk 自帶的 Microsoft.NETCore.UniversalWindowsPlatform
缺少System.xml.xpath 命名空間,以及一些系統方法的缺少。刪除掉一些方法,然后發現xml需要處理才行。
遂在網上搜索相關方法,終於在NuGet 發現微軟商城上傳的System.Xml.XPath.XDocument,然后添加引用發現可行。
由於.NETCore 的一些缺失,再處理掉一些報錯的方法和類。成功編譯通過,然后添加到項目也可使用。算是基本出來了一個版本。
下面講一下使用方法,以及來體驗一下UWP通用應用的開發。
1.新建一個windows通用應用。
2.添加一下System.Xml.XPath.XDocument 的引用
nuget命令:
PM> Install-Package System.Xml.XPath.XDocument
也可以在項目右鍵 管理Nuget 里面查找添加。
3.添加 HtmlAgilityPack.Win10.dll 引用
最終效果如下:
然后我們就可以使用HtmlAgilityPack 下面我們以獲取園子的編輯推薦板塊為例。
鏈接地址為:http://www.cnblogs.com/aggsite/headline 最終效果如下:
這里只是簡單的做一個示例。
主要代碼如下:
private async void Grid_Loading(FrameworkElement sender, object args) { WebRequest request = HttpWebRequest.Create("http://www.cnblogs.com/aggsite/headline"); WebResponse response = await request.GetResponseAsync(); Stream stream = response.GetResponseStream(); var result = ""; using (StreamReader sr = new StreamReader(stream)) { result = sr.ReadToEnd(); } HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(result); var nodes=doc.DocumentNode.SelectNodes("//*[@id=\"post_list\"]/div/div/h3"); foreach (var item in nodes) { ListViewItem lv = new ListViewItem(); lv.Content = item.InnerText; cnblogs.Items.Add(lv); } }
更多請下載示例。
示例下載,內附 HtmlAgilityPack.Win10.dll
http://files.cnblogs.com/files/linezero/CnblogsApp.rar
如果你覺得本文對你有幫助,請點擊“推薦”,謝謝。