發表文章

目前顯示的是有「Selenium」標籤的文章

「Chrome Headless」隱藏瀏覽器的介面,讓爬蟲程式偷偷的執行

圖片
一、介紹 延伸之前的 Selenium 的文章,此篇將介紹如何使用 Chrome Headless 搭配 Selenium 的 Hide Command ,讓爬蟲程式在看不到的情況下執行。 二、 Nuget 套件 Selenium.WebDriver Selenium.WebDriver.ChromeDriver 三、教學步驟 圖一、安裝 Selenium 套件 。 圖二、貼上範例程式 //Chrome headless 參數設定 var chromeOptions = new ChromeOptions(); chromeOptions.AddArguments("headless"); //啟用 Selenium Hide Command var driverService = ChromeDriverService.CreateDefaultService(); driverService.HideCommandPromptWindow = true; //建置 Chrome Driver var driver = new ChromeDriver(driverService, chromeOptions); //瀏覽器 轉址至 Google圖片 driver.Url = @"https://www.google.com.tw/imghp?hl=zh-TW"; //輸入關鍵字 "Selenium" var searchInput = driver.FindElementByCssSelector(@".gLFyf"); searchInput.SendKeys("Selenium"); //按下 Enter searchInput.SendKeys(OpenQA.Selenium.Keys.Enter); //抓取圖片清單 var imgTags = driver.FindElementsByTagName("img").ToList(); //取得 5張 jpeg 圖片 var images = imgTags.Select(x => x.GetAttribute("s...

「Katalon Recorder」簡化測試腳本撰寫的工具

圖片
一、介紹 「Katalon Recorder」 是一款錄製 Web UI 測試 工具,安裝於 Chrome、FireFox 瀏覽器。 Katalon Recorder 錄製瀏覽器的操作過程,並可產生 C#, Java, Python 的測試原始碼,讓工程師更易撰寫 WEB UI 測試。 此文章將介紹使用 Katalon Recorder 錄製腳本,並把腳本移至 Visual Studio 2019 做單元測試。 二、腳本內容 開啟 Google 搜尋關鍵字 測試 ,檢視第二筆搜尋結果的描述是否為 「這是一個根據弗洛伊德焦慮類型理論…」 。 三、 Nuget 套件 MSTest.TestAdapter ( 測試專案預設會安裝 ) MSTest.TestFramework ( 測試專案預設會安裝 ) Selenium.WebDriver Selenium.WebDriver.ChromeDriver 四、教學步驟 圖一、安裝套件。 圖二、 Chrome 瀏覽器安裝 Katalon Recorder 。 圖三、開啟 Katalon Recorder ( 注意右上角的 ICON ) 圖四、開始錄製腳本 圖五、操作瀏覽器(此時 Katalon Recorder 就會錄製腳本) 圖六、停止錄製 圖七、產生 C# 程式碼 圖八、將程式碼貼到 測試專案 圖九、將 FirefoxDriver 改成 ChromeDriver ,讓單元測試使用 Chrome 瀏覽器。 圖十、執行 測試 。 圖十一、測試結果。 四、相關連結 Selenium 前端 UI 自動化測試、爬蟲程式 最佳利器 五、參考 Katalon Recorder Katalon Recorder 下載 ( Chrome 擴充功能 )

「Selenium」前端 UI 自動化測試、爬蟲程式 最佳利器

圖片
一、介紹 「Selenium」 讓瀏覽器自動化的工具,可運用於爬蟲程式、前端 UI 自動化測試、Web 應用程式管理..等,支援多種語言如 C#,Java,Perl,PHP,Python..等。 範例程式將介紹如何使用 C# 語言運用 Selenium 撰寫 自動載圖程式 (簡易爬蟲),讓應用程式開啟瀏覽器,前往 Google 圖片 ,下載 5 張 JPEG 圖檔。 二、 Nuget 套件 Selenium.WebDriver Selenium.WebDriver.ChromeDriver 三、教學步驟 圖一、安裝 Selenium 套件 。 圖二、貼上範例程式 var driver = new ChromeDriver(); //瀏覽器 轉址至 Google圖片 driver.Url = @"https://www.google.com.tw/imghp?hl=zh-TW"; //輸入關鍵字 "Selenium" var searchInput = driver.FindElementByCssSelector(@".gLFyf"); searchInput.SendKeys("Selenium"); //按下 Enter searchInput.SendKeys(Keys.Enter); //抓取圖片清單 var imgTags = driver.FindElementsByTagName("img").ToList(); //取得 5張 jpeg 圖片 var images = imgTags.Select(x => x.GetAttribute("src")).Where(x => x!=null && x.StartsWith("data:image/jpeg;base64,")).Take(5).ToList(); //下載圖片 foreach(var image in images) { byte[] bytes = Convert.FromBase64String(image.Replace("data:image/jpe...