c#使用nsoup解析html亂碼解決方法分享 nsoup教程
下載地址:http://nsoup.codeplex.com/
簡(jiǎn)單用法如下:
NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(HtmlString);
處理網(wǎng)絡(luò)上的頁面:
NSoup.Nodes.Document doc = NSoup.NSoupClient.Connect("http://www.dbjr.com.cn/").Get();
但是遺憾的是NSoup默認(rèn)的編碼是UTF-8,處理中文有亂碼(對(duì)于編碼是UTF-8的自然不會(huì)有亂碼,但是有些GB2312的就可能有亂碼,謝謝 forhells的提醒)。
目前我找到兩種解決辦法:
1.下載網(wǎng)頁源代碼再處理
WebClient webClient = new WebClient();
String HtmlString=Encoding.GetEncoding("utf-8").GetString(webClient.DownloadData("http://www.dbjr.com.cn"));
NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(HtmlString);
2.獲得網(wǎng)頁的流
WebRequest webRequest=WebRequest.Create("http://www.dbjr.com.cn");
NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(webRequest.GetResponse().GetResponseStream(),"utf-8");
第二種用著比較方便,但是我覺得第一種比較合適,畢竟NSoup是個(gè)Html解析類,下載網(wǎng)頁代碼這種事情本來不應(yīng)該交給它。
- c#使用htmlagilitypack解析html格式字符串
- C#抓取網(wǎng)頁數(shù)據(jù) 解析標(biāo)題描述圖片等信息 去除HTML標(biāo)簽
- C#自寫的一個(gè)HTML解析類(類似XElement語法)
- C#下解析HTML的兩種方法介紹
- C# 使用 WebBrowser 實(shí)現(xiàn) HTML 轉(zhuǎn)圖片功能的示例代碼
- 利用C#代碼將html樣式文件與Word文檔互換的方法
- C#正則過濾HTML標(biāo)簽并保留指定標(biāo)簽的方法
- C#基于正則表達(dá)式抓取a標(biāo)簽鏈接和innerhtml的方法
- 通過C#實(shí)現(xiàn)發(fā)送自定義的html格式郵件
- c# 使用HtmlAgilityPack解析Html
相關(guān)文章
C#實(shí)現(xiàn)對(duì)文件進(jìn)行加密保護(hù)的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)對(duì)文件進(jìn)行加密保護(hù)的功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12深入分析C#鍵盤勾子(Hook)攔截器,屏蔽鍵盤活動(dòng)的詳解
本篇文章是對(duì)C#鍵盤勾子(Hook)攔截器,屏蔽鍵盤活動(dòng)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05關(guān)于async和await的一些誤區(qū)實(shí)例詳解
這篇文章主要介紹了關(guān)于async和await的一些誤區(qū)實(shí)例詳解,有助于更加深入的理解C#程序設(shè)計(jì),需要的朋友可以參考下2014-08-08C#向線程中傳遞多個(gè)參數(shù)的解決方法(兩種)
這篇文章主要介紹了C#向線程中傳遞多個(gè)參數(shù)的解決方法(兩種)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07Unity中 ShaderGraph 實(shí)現(xiàn)旋渦傳送門效果入門級(jí)教程(推薦)
通過Twirl 旋轉(zhuǎn)節(jié)點(diǎn)對(duì)Gradient Noise 梯度噪聲節(jié)點(diǎn)進(jìn)行操作,就可得到一個(gè)旋轉(zhuǎn)的旋渦效果。具體實(shí)現(xiàn)代碼跟隨小編一起通過本文學(xué)習(xí)下吧2021-07-07