分享程式代碼相關筆記
目前文章總數:157 篇
最後更新:2024年 12月 07日
新增專案 -> 管理Nuget套件
補充描述
瀏覽 -> 安裝以下:
1. Selenium.WebDriver
2. Selenium.Chrome.WebDrier (※我們要使用Chrome )
https://louislinebot.azurewebsites.net/Login
實作一個Function ,進行Selenium 的呼叫程式自動登入,完整程式如下:
1. Selenium.WebDriver
2. Selenium.Chrome.WebDrier (※我們要使用Chrome )
/// <summary>
/// 進行登入
/// </summary>
public void Login()
{
IWebDriver driver = new ChromeDriver();
//開啟網頁
driver.Navigate().GoToUrl(_url);
//隱式等待 - 直到畫面跑出資料才往下執行
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10000);
//輸入帳號
IWebElement inputAccount = driver.FindElement(By.Name("Account"));
Thread.Sleep(2000);
//清除按鈕
inputAccount.Clear();
Thread.Sleep(2000);
inputAccount.SendKeys("20180513");
Thread.Sleep(2000);
//輸入密碼
IWebElement inputPassword = driver.FindElement(By.Name("Passwrod"));
inputPassword.Clear();
Thread.Sleep(2000);
inputPassword.SendKeys("123456");
Thread.Sleep(2000);
//點擊執行
IWebElement submitButton= driver.FindElement(By.XPath("/html/body/div[2]/form/table/tbody/tr[4]/td[2]/input"));
Thread.Sleep(2000);
submitButton.Click();
Thread.Sleep(2000);
driver.Quit();
}
呼叫Selenium Driver ,使用ChromeDriver()
IWebDriver driver = new ChromeDriver();
//開啟網頁
driver.Navigate().GoToUrl(_url);
//隱式等待 - 直到畫面跑出資料才往下執行
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10000);
找出頁面的【帳號】輸入位置 TextBox ※ Dom元件的 Id = Account
//輸入帳號
IWebElement inputAccount = driver.FindElement(By.Name("Account"));
Thread.Sleep(2000);
//清除按鈕
inputAccount.Clear();
Thread.Sleep(2000);
inputAccount.SendKeys("20180513");
Thread.Sleep(2000);
找出頁面的【密碼】輸入位置 TextBox ※ Dom元件的Id = Password
//輸入密碼
IWebElement inputPassword = driver.FindElement(By.Name("Passwrod"));
inputPassword.Clear();
Thread.Sleep(2000);
inputPassword.SendKeys("123456");
Thread.Sleep(2000);
找出頁面的【submit】按鈕 ,並且點擊他
//點擊執行
IWebElement submitButton= driver.FindElement(By.XPath("/html/body/div[2]/form/table/tbody/tr[4]/td[2]/input"));
Thread.Sleep(2000);
submitButton.Click();
Thread.Sleep(2000);
增加關閉代碼,避免下次開啟執行失敗
//點擊執行
IWebElement submitButton= driver.FindElement(By.XPath("/html/body/div[2]/form/table/tbody/tr[4]/td[2]/input"));
Thread.Sleep(2000);
submitButton.Click();
Thread.Sleep(2000);
影片DEMO連結 Youtube