Selenium 操作對象方法總結

1.頁面的按鈕或輸入框操作:首先定位到該元素,然後可以進行點擊或輸入值

如:

driver.find_element_by_css_selector("xxx").click()

driver.find_element_by_id("xxx").send_keys("yyy")

2.下拉選擇框處理:通過select類的方法根據具體內容進行選擇

如:

Select(driver.find_element_by_id("xxx")).select_by_visible_text(yyy)

3.可手動輸入的下拉選擇框處理:先定位到該框體,然後根據可選擇的列表內容進行選擇輸入

如:

driver.find_element_by_css_selector("xxx").click()
driver.find_element_by_xpath("//li[contains(.,'xxx')]").click()

說明:資料文檔顯示css也支持contains選擇方法,但是我實際使用的時候不生效,具體原因待定,先使用xpath定位的conta方法

css方法參考:E:contains('xxxx')

4.根據列表中某一項內容來選擇table中指定項(勾選table的指定項),如根據登錄名來勾選指定項

處理方法:

(1)推薦:根據xpath軸先定位到登錄名行,然後根據登錄名節點找到同級的前面勾選節點,然後可以實現依據登錄名來勾選指定的項

如:

driver.find_element_by_xpath("//td[@title='User1']/preceding-sibling::td/input")

(2)-先根據登錄名獲取對應的用戶id,然後根據id值定位到勾選框進行勾選

(3)-自己編寫方法遍歷表格的登錄名列(依據x,y座標),找到輸入的登錄名如user2對應的行,然後根據行數勾選對應的數據項

5.上傳文件操作處理,處理方法是直接定位到對應文件上傳框(input),然後發送文件路徑即可執行上傳

(注意:無需點擊上傳按鍵,點擊彈出的是Windows窗體,Selenium無法處理;上傳輸入框無需clear,不然會報錯說找不到;直接發送文件路徑即可)

driver.find_element_by_name("fileChoosed").send_keys("D://123.txt")

6.下載文件操作處理,由於Selenium無法直接操作系統的彈出框,所以要藉助AUtoIt工具進行識別下載保存(上傳也可以),具體操作可以參考:

http://www.cnblogs.com/fnng/p/4188162.html,基本的實現代碼如下:

ControlFocus("保存圖像", "","Edit1")
WinWait("[CLASS:#32770]","",10)
ControlClick("保存圖像", "","Button1");

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章