1. 程式人生 > 實用技巧 >結合Excel批量操作網頁,模擬登陸

結合Excel批量操作網頁,模擬登陸

有這樣一個場景,客戶的一批賬戶密碼儲存在Excel中,需要逐一登入,進行某些操作

從頭開始來的話很麻煩,讀取Excel,安裝Web控制元件,主要是控制元件操作沒有很方便,有沒有類似原始js呼叫、jqurey呼叫那樣用C#操作網頁?

這時可以用ExcelWeb指令碼助手幫助完成

ExcelWeb指令碼助手提供了Excel、瀏覽器操作的使用API,可以像操作Com那樣操作Excel,操作js那樣操作瀏覽器

開啟Excel並遍歷行:

模擬登陸:

程式碼和註釋:

 1             var InfoFile = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(),"
賬戶資訊.xlsx");//Demo賬戶檔案路徑 2 Workbook workbook = Command.Excel.OpenExcel(InfoFile);//開啟 3 ExcelRowCollection rows = workbook.ActiveSheet.Rows;//獲取檔案內的所有行 4 5 var pageUrl = "file:///"+System.IO.Directory.GetCurrentDirectory()+"/chahua3318/login.html";//Demo網址路徑
6 for (int i = 2; i <= rows.Count; i++) {//遍歷行 7 var RowItem = rows[i]; 8 var page = Command.Browser.AddPage(pageUrl); 9 var nameElement = page.getElementById("name"); 10 var pwdElement = page.getElementById("pwd"); 11 nameElement.Value=RowItem.Cells["
B"].Value.ToString(); 12 pwdElement.Value = RowItem.Cells["C"].Value.ToString(); 13 page.getElementById("login_sub").click(); 14 Wait(); 15 var 密碼錯誤框= page.FindAlertForm("密碼錯誤"); 16 if (密碼錯誤框!=null) { 17 RowItem.Cells["D"].Value="密碼錯誤"; 18 密碼錯誤框.Click(); 19 }else 20 { 21 var 房源管理 = page.getElementById("dleft_tab1_2_span"); 22 房源管理.click(); 23 Wait(); 24 25 var subIframe= page.GetIframe("right"); 26 var Text = subIframe.Query(".ui_flt").text(); 27 RowItem.Cells["E"].Value=Text; 28 } 29 }