您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> asp.net编程 >> 正文

用asp.net c# HttpWebRequest获取网页源代码

作者:佚名    责任编辑:admin    更新时间:2022-06-22

   该方法需要传递目标网页的编码方式,比如System.Text.Encoding.Default或者System.Text.Encoding.UTF8

  如果哪位高手知道如何自动判断目标页面的编码格式,请在评论中告知。谢谢!

  ///

  /// 获取源代码

  ///

  ///

  ///

  ///

  public static string GetPage(string url, Encoding encoding)

  {

  HttpWebRequest request = null;

  HttpWebResponse response = null;

  StreamReader reader = null;

  try

  {

  request = (HttpWebRequest)WebRequest.Create(url);

  request.UserAgent = "www.svnhost.cn";

  request.Timeout = 20000;

  request.AllowAutoRedirect = false;

  response = (HttpWebResponse)request.GetResponse();

  if (response.StatusCode == HttpStatusCode.OK && response.ContentLength < 1024 * 1024)

  {

  reader = new StreamReader(response.GetResponseStream(), encoding);

  string html = reader.ReadToEnd();

  return html;

  }

  }

  catch

  {

  }

  finally

  {

  if (response != null)

  {

  response.Close();

  response = null;

  }

  if (reader != null)

  reader.Close();

  if (request != null)

  request = null;

  }

  return string.Empty;