[ASP.NET]強大的網頁處理類NSoup

我們如果在項目中碰到要處理HTML,如果是.NET程序員的話,強烈推薦使用NSoup,不然的話截取字符串是在是太痛苦了。NSoup是一個開源框架,是JSoup的.NET移植版本,使用方法基本一致!NSoup點擊下載

獲取網頁的html代碼

處理網頁html
  1. <span style="font-family: Arial, Helvetica, sans-serif;">NSoup.Nodes.Document doc = NSoup.NSoupClient.Connect("http://blog.csdn.net/dingxiaowie2013").Get();</span>  

或者是自定義html,生成html頁面
  1. NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(HtmlString);  


但是很遺憾NSoup默認的是UTF-8,處理中文會有亂碼(對於編碼是UTF-8自然會正常,但是有些是GB2312的就可能有亂碼)

解決NSoup解析HTML亂碼的辦法

1.下載網頁源代碼再處理


  1. //下載網頁源代碼

  2. WebClient webClient = new WebClient();  

  3. string htmlString = Encoding.GetEncoding("utf-8").GetString(webClient.DownloadData("http://www.baidu.com"));  

  4. NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(htmlString);  


2.獲得網頁的流



  1. //獲得網頁流

  2. WebRequest webRequest = WebRequest.Create("http://blog.csdn.net/dingxiaowei2013");  

  3. NSoup.Nodes.Document doc1 = NSoup.NSoupClient.Parse(webRequest.GetResponse().GetResponseStream(), "utf-8");  



效果圖


wKiom1M-VEqxqQFeAAHTCTF-Mfw792.jpg

wKioL1M-VCKQ6BtbAAZOQ5VSGP4811.jpg

會發現跟百度的源碼是一樣的


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章