C#.NET實(shí)現(xiàn)網(wǎng)頁自動(dòng)登錄的方法
本文實(shí)例講述了C#.NET實(shí)現(xiàn)網(wǎng)頁自動(dòng)登錄的方法。分享給大家供大家參考。具體如下:
用C#語言編寫一個(gè)Windows Form應(yīng)用程序,實(shí)現(xiàn)自動(dòng)登錄一個(gè)特定的頁面。
下面以自動(dòng)登錄:http://localhost/Web/Login.aspx 作為例子,講解如何模擬手工輸入用戶名密碼并點(diǎn)擊登錄,實(shí)現(xiàn)自動(dòng)登錄。
新建一個(gè)C#應(yīng)用程序,給應(yīng)用程序起個(gè)名字,如AutoLogin,在窗體中添加一個(gè)TextBox、Button,及WebBrowser控件,并為WebBrowser控件添加webBrowser1_DocumentCompleted事件。
按鈕的點(diǎn)擊事件以及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"); // 點(diǎn)擊“登錄”按鈕
}
}
當(dāng)在TextBox中輸入http://localhost/Web/Login.aspx 并點(diǎn)擊按鈕后,就可以實(shí)現(xiàn)頁面的自動(dòng)登錄了。
希望本文所述對大家的C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
Unity3D基于OnGUI實(shí)時(shí)顯示FPS
這篇文章主要介紹了Unity3D基于OnGUI實(shí)時(shí)顯示FPS,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
C# Winform 實(shí)現(xiàn)屏蔽鍵盤的win和alt+F4的實(shí)現(xiàn)代碼
最近在做一個(gè)惡搞程序,就是打開后,程序獲得桌面的截圖然后,然后全屏顯示在屏幕上,用戶此時(shí)則不能進(jìn)行任何操作。2009-02-02
c# 模擬串口通信 SerialPort的實(shí)現(xiàn)示例
本文主要介紹了c# 模擬串口通信 SerialPort的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05

