注意:页面请求源码返回乱码得看网页是否采用了GZip压缩,是的话得先进行解压,避免返回乱码
public string GetHtmlCode(string url) //对应网页地址
{
string htmlCode;
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.Timeout = 30000;
webRequest.Method = "GET";
webRequest.UserAgent = "Mozilla/4.0";
webRequest.Headers.Add("Accept-Encoding", "gzip, deflate");
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
if (webResponse.ContentEncoding.ToLower() == "gzip") //如果使用了GZip则先解压
{
using (Stream streamReceive = webResponse.GetResponseStream())
{
using (var zipStream =
new GZipStream(streamReceive,CompressionMode.Decompress))
{
using (StreamReader sr = new StreamReader(zipStream, Encoding.Default))
{
htmlCode = sr.ReadToEnd();
}
}
}
}
else//普通网页返回
{
using (Stream streamReceive = webResponse.GetResponseStream())
{
using (StreamReader sr = new StreamReader(streamReceive, Encoding.Default))
{
htmlCode = sr.ReadToEnd();
}
}
}
return htmlCode;