设为主页 | 加入收藏 | 繁體中文

利用HttpRequest登录到某个网站,然后获取网站信息的


  res = (HttpWebResponse)req.GetResponse();
  cookieheader = req.CookieContainer.GetCookieHeader(new Uri(url));
  HttpContext.Current.Application.Lock();
  HttpContext.Current.Application["cookieheader"] = cookieheader;
  HttpContext.Current.Application.UnLock();
  Stream ReceiveStream = res.GetResponseStream();
  Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
  StreamReader sr = new StreamReader( ReceiveStream, encode );
  Char[] read = new Char[256];
  int count = sr.Read( read, 0, 256 );
  while (count > 0)
  {
  String str = new String(read, 0, count);
  strResult += str;
  count = sr.Read(read, 0, 256);
  }
  }
  catch(Exception e)
  {
  strResult = e.ToString();
  }
  finally
  {
  if ( res != null )
  {
  res.Close();
  }
  }
  return strResult;
  }
  public static string getPage(String url, String paramList)
  {
  HttpWebResponse res = null;
  string strResult = "";
  try
  {
  HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
  req.Method = "POST";
  req.KeepAlive = true;
  req.ContentType = "application/x-www-form-urlencoded";
  CookieContainer cookieCon = new CookieContainer();
  req.CookieContainer = cookieCon;
  req.CookieContainer.SetCookies(new Uri(url),cookieheader);
  StringBuilder UrlEncoded = new StringBuilder();
  Char[] reserved = {'?', '=', '&'};
  byte[] SomeBytes = null;
  if (paramList != null)
  {
  int i=0, j;
  while(i{
  j=paramList.IndexOfAny(reserved, i);
  if (j==-1)
  {
  UrlEncoded.Append(HttpUtility.UrlEncode(paramList.Substring(i, paramList.Length-i)));
  break;
  }
  UrlEncoded.Append(HttpUtility.UrlEncode(paramList.Substring(i, j-i)));
  UrlEncoded.Append(paramList.Substring(j,1));
  i = j+1;
  }
  SomeBytes = Encoding.UTF8.GetBytes(UrlEncoded.ToString());
  req.ContentLength = SomeBytes.Length;
  Stream newStream = req.GetRequestStream();
  newStream.Write(SomeBytes, 0, SomeBytes.Length);
  newStream.Close();
  }
  else
  {
  req.ContentLength = 0;
  }
  res = (HttpWebResponse)req.GetResponse();
  Stream ReceiveStream = res.GetResponseStream();
  Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
  StreamReader sr = new StreamReader( ReceiveStream, encode );
  Char[] read = new Char[256];
  int count = sr.Read( read, 0, 256 );
  while (count > 0)
  {
  String str = new String(read, 0, count);
  strResult += str;
  count = sr.Read(read, 0, 256);
  }
  }
  catch(Exception e)
  {
  strResult = e.ToString();
  }
  finally
  {
  if ( res != null )
  {
  res.Close();
  }
  }
  return strResult;
  }
  #region Web Form Designer generated code
  override protected void OnInit(EventArgs e)
  {
  //
  // CODEGEN: This call is required by the ASP.NET Web Form Designer.
  //
  InitializeComponent();
  base.OnInit(e);
  }
  ///
  /// Required method for Designer support - do not modify
  /// the contents of this method with the code editor.
  ///
  private void InitializeComponent()
  {
  this.Load += new System.EventHandler(this.Page_Load);
  }
  #endregion
  }
  }
  原作者:spring.z
 


    文章作者: 福州军威计算机技术有限公司
    军威网络是福州最专业的电脑维修公司,专业承接福州电脑维修、上门维修、IT外包、企业电脑包年维护、局域网网络布线、网吧承包等相关维修服务。
    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和声明。否则将追究法律责任。

TAG:
评论加载中...
内容:
评论者: 验证码: