C#.NET实现网页自动登录的方法

本文实例讲述了C#.NET实现网页自动登录的方法。分享给大家供大家参考。具体如下:

用C#语言编写一个Windows Form应用程序,实现自动登录一个特定的页面。

下面以自动登录:http://localhost/Web/Login.aspx 作为例子,讲解如何模拟手工输入用户名密码并点击登录,实现自动登录。

新建一个C#应用程序,给应用程序起个名字,如AutoLogin,在窗体中添加一个TextBox、Button,及WebBrowser控件,并为WebBrowser控件添加webBrowser1_DocumentCompleted事件。

按钮的点击事件以及webBrowser1_DocumentCompleted的代码如下:

private void btn_Add_Click(object sender, EventArgs e)
{
 string sUrl = txb_Url.Text.Trim();
 if (sUrl.Length > 0)
 {
  webBrowser1.Navigate(sUrl);
 }
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
 HtmlElement ClickBtn = null;
 if (e.Url.ToString().ToLower().IndexOf("login.aspx") > 0)
 {
  HtmlDocument doc = webBrowser1.Document;
  for (int i = 0; i < doc.All.Count; i++)
  {
   if(doc.All[i].TagName.ToUpper().Equals("INPUT"))
   {
    switch(doc.All[i].Name)
    {
     case "txtUserName":
      doc.All[i].InnerText = "[email protected]"; // 用户名
      break;
     case "txtPassword":
      doc.All[i].InnerText = "zzzzzz"; // 密码
      break;
     case "btnSubmit":
      ClickBtn = doc.All[i];
      break;
    }
   }
  }
  ClickBtn.InvokeMember("Click"); // 点击“登录”按钮
 }
}

当在TextBox中输入http://localhost/Web/Login.aspx 并点击按钮后,就可以实现页面的自动登录了。

希望本文所述对大家的C#程序设计有所帮助。

你可能感兴趣的:(C#.NET实现网页自动登录的方法)