[ASP.NET]强大的网页处理类NSoup

我们如果在项目中碰到要处理HTML,如果是.NET程序员的话,强烈推荐使用NSoup,不然的话截取字符串是在是太痛苦了。NSoup是一个开源框架,是JSoup的.NET移植版本,使用方法基本一致!NSoup点击下载

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比衡阳县网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式衡阳县网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖衡阳县地区。费用合理售后完善,十余年实体公司更值得信赖。

获取网页的html代码

处理网页html
[csharp]view plaincopyprint?[ASP.NET]强大的网页处理类NSoup[ASP.NET]强大的网页处理类NSoup
  1. NSoup.Nodes.Document doc = NSoup.NSoupClient.Connect("http://blog.csdn.net/dingxiaowie2013").Get();  

或者是自定义html,生成html页面
[csharp]view plaincopyprint?[ASP.NET]强大的网页处理类NSoup[ASP.NET]强大的网页处理类NSoup
  1. NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(HtmlString);  


但是很遗憾NSoup默认的是UTF-8,处理中文会有乱码(对于编码是UTF-8自然会正常,但是有些是GB2312的就可能有乱码)

解决NSoup解析HTML乱码的办法

1.下载网页源代码再处理

[csharp]view plaincopyprint?[ASP.NET]强大的网页处理类NSoup[ASP.NET]强大的网页处理类NSoup
  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.获得网页的流

[csharp]view plaincopyprint?[ASP.NET]强大的网页处理类NSoup[ASP.NET]强大的网页处理类NSoup
  1. //获得网页流

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

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


效果图

[ASP.NET]强大的网页处理类NSoup

[ASP.NET]强大的网页处理类NSoup

会发现跟百度的源码是一样的


新闻标题:[ASP.NET]强大的网页处理类NSoup
转载来于:http://ybzwz.com/article/ieoohd.html