首页 > Windows开发 > 详细

WinForm使用webbrowser爬取数据,中文乱码问题

时间:2014-12-17 00:07:10      阅读:610      评论:0      收藏:0      [点我收藏+]

使用winform中的webbrowser抓取某个网站的数据时,遇到中文乱码的问题:

当时使用的获取网页内容的代码为:

webBrowser1.DocumentText.ToString();

 不管我如何使用转换编码的方式进行转换,都是乱码,在度娘的帮助下,终于找到正确答案:

如果所爬取的网站的编码是GB2312,则可以使用如下代码进行读取网页数据:

System.IO.StreamReader Reader = new System.IO.StreamReader(this.webBrowser1.DocumentStream, System.Text.Encoding.GetEncoding("GB2312")); 
  string Document = null; 
  Document = Reader.ReadToEnd();

如果所爬取的网站的编码UTF8,则使用下面的代码处理:

System.IO.StreamReader Reader = new System.IO.StreamReader(this.webBrowser1.DocumentStream, System.Text.Encoding.GetEncoding("utf-8"));

不论网站的编码格式为何, 都可以使用如下方式处理:

System.IO.StreamReader Reader = new System.IO.StreamReader(this.webBrowser1.DocumentStream, System.Text.Encoding.GetEncoding(this.webBrowser1.Document.Encoding )); 

 

WinForm使用webbrowser爬取数据,中文乱码问题

原文:http://www.cnblogs.com/chenfengmugu/p/4168390.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!