查詢頁面元素的技巧
1. driver.findElementBy…
…為Name, Id, Tag, Class, CSS, LinkText, PartialLinkText, XPath等
明確尋找方式時直接使用
2. By與findElement
By.查詢方法(查詢元素字串)
查詢方法有方法一的8種,再加上 Any,
By := ComObjCreate("Selenium.By")
element := driver.findElement(By.CSS("CSS字串"))
byAny := By.Any(By.Id("stock_id"), By.Name("stock_id"))
element := driver.findElement(byAny)
判斷元素是否存在的方法
- WebElement的IsPresent特性
element := driver.findElementByID("stock_id")
isPresent := element.IsPresent
實際執行時,若網頁沒有被尋找的元素時就會跳出錯誤訊息。使用額外參數以避免錯誤訊息:
element := driver.findElementByID("stock_id", iTimeout, 是否彈出錯誤訊息)
- WebElements的Count特性
elements := driver.findElementsByName("stock_id")
iCount := elements.Count
isPresent := (iCount > 0)
- driver.Until()
語法:
driver.until(判斷用函數, 逾時毫秒數)
AutoHotkey的函數物件
fn := Func(“函數名稱”)
fn := Func(“函數名稱”).bind(參數)
fnIsPresent1 := Func("isExistByID").bind("stock_id")
driver.until(fnIsPresent1, 10000)
fnIsPresent := Func("isExist").bind(By.ID("stock_id")
driver.until(fnIsPresent, 10000)
IsExistByID(sStockID) {
ele := driver.findElementByID(sStockID)
return ele.IsPresent
}
IsExist(by) {
ele := driver.findElement(by)
return ele.IsPresent
}
- Waiter物件
有更多的等待方法可使用。
test26_selenium5_until.ahk
解說影片
##
您可能也會有興趣的類似文章
- AutoHotkey-網頁自動化Selenium WebDriver由實例學習常用功能(使用XPATH CSS Explorer擴充) (0則留言, 2019/11/13)
- AutoHotkey-網頁自動化Selenium WebDriver安裝 (3則留言, 2019/11/10)
- AutoHotkey-Selenium WebDriver系統架構與功能說明文件 (0則留言, 2019/11/16)
- 取得iReport / JasperReports報表內特定元件的方法 [修訂] (5則留言, 2011/10/17)
- [Tools] 常用的AutoHotKey設定 (9則留言, 2005/05/12)
- AutoHotkey輸出中文的方法 (18則留言, 2008/03/01)
- 輕鬆學會AutoHotkey的熱鍵:熱鍵用法實例解說(AHK #4) (0則留言, 2019/05/24)
- 快速建立個人常用詞庫-AutoHotkey 熱字串小工具:HotString Helper(AHK #3) (0則留言, 2019/05/18)
- 用Nemo Documents快速找到最近編輯過的文件 (5則留言, 2011/02/23)
- 幾個AutoHotkey的實用範例:音量控制、滾輪回上層與語音功能(AHK #7) (0則留言, 2019/06/05)
- 建立iReport多頁式靜態內容報表的方法 (0則留言, 2016/06/23)
- 改寫AutoHotkey輸出中文字串的寫法 (4則留言, 2009/06/20)
- 在Xuite裡使用jQuery的重點 (0則留言, 2007/09/22)
- AutoHotkey:在FireFox裡用鍵盤瀏覽網頁 (2則留言, 2008/03/27)
- 輕鬆學會彈指神功-揭露AutoHotkey絕技 (59則留言, 2008/04/10)