现在的位置: 首页 > 综合 > 正文

C#.NET应用程序实现网页自动登录

2012年10月13日 ⁄ 综合 ⁄ 共 1019字 ⁄ 字号 评论关闭

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

下面以自动登录:http://bm.chinaz.com/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 = "xxxx@yy.com";  // 用户名
                                break;
                            case "txtPassword":
                                doc.All[i].InnerText = "zzzzzz";      // 密码
                                break;
                            case "btnSubmit":
                                ClickBtn = doc.All[i];
                                break;
                        }
                    }
                }
                ClickBtn.InvokeMember("Click");            // 点击“登录”按钮
            }
        }

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

抱歉!评论已关闭.