直接看这三种办法的源码吧,
using System; using System.IO; using System.Net; namespace ReadHtml{ class ReadHtml{ static void Main(){ System.Console.WriteLine("准备更新数据"); string url = "http://www.jiuwola.com/"; //string html = new ReadHtml().GetHtmlByWebClient(url); //string html = new ReadHtml().GetHtmlByWebRequest(url); string html = new ReadHtml().GetHtmlByHttpWebRequest(url); System.Console.WriteLine(html); } //第一种 private string GetHtmlByWebClient(string url){ string html = ""; WebClient wc = new WebClient(); Stream s = wc.OpenRead(url); StreamReader sr = new StreamReader(s,System.Text.Encoding.GetEncoding("utf-8")); html = sr.ReadToEnd(); s.Close(); return html; } //第二种 private string GetHtmlByWebRequest(string url){ Uri uri = new Uri(url); WebRequest request = WebRequest.Create(uri); WebResponse response = request.GetResponse(); Stream s = response.GetResponseStream(); StreamReader sr = new StreamReader(s,System.Text.Encoding.GetEncoding("utf-8")); string html = sr.ReadToEnd(); s.Close(); response.Close(); return html; } //第三种 建议使用这一种办法 private string GetHtmlByHttpWebRequest(string url){ Uri uri = new Uri(url); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri); request.UserAgent = "User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705"; request.Accept = "*/*"; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream s = response.GetResponseStream(); StreamReader sr = new StreamReader(s,System.Text.Encoding.GetEncoding("utf-8")); string html = sr.ReadToEnd(); s.Close(); response.Close(); return html; } } }