Selenium+Python 學習筆記4

1、Class屬性有空格?

Class 屬性有空格是多重屬性,取其中一個就好了

driver.find_element_by_class_name(“quickdelete-wrap”) # 取class其中一個就行

2、常規操作

# 清空輸入框信息
driver.find_element_by_name("email").clear()

# 輸入框輸入文本信息
driver.find_element_by_name("email").send_keys("adb")
driver.find_element_by_name("password").send_keys("123")

# 輸入框輸入文本信息
driver.find_element_by_name("email").send_keys("adb")
driver.find_element_by_name("password").send_keys("123")

# 輸入框輸入文本信息
driver.find_element_by_name("email").send_keys("adb")
driver.find_element_by_name("password").send_keys("123")

3、鼠標事件

鼠標事件:
from selenium.webdriver.common.action_chains import ActionChains 
context_click() 右擊
double_click() 雙擊
drag_and_drop(source, target)拖動

move_to_element() 鼠標懸停

4、隱式等待與顯式等待

(1)強制等待  sleep(xx)強制讓閃電俠等xx時間,不管凹凸曼能不能跟上速度,還是已經提前到了,都必須等xx時間。

(2)隱式等待 implicatly_wait 隱式等待 全局的,不論閃電俠去哪兒,都要等凹凸曼 十分鐘,不管是一分鐘到了,還是五分鐘就到了,此時就走。  如果凹凸曼在規定時間內沒到,則閃電俠自己去,那自然就等着凹凸曼給你拋異常吧。

(3)顯式等待 WebDriverWait,配合該類的until()和until_not()方法,就能夠根據判斷條件而進行靈活地等待了。它主要的意思就是:程序每隔xx秒看一眼,如果條件成立了,則執行下一步,否則繼續等待,直到超過設置的最長時間,然後拋出TimeoutException。

  1. Selenium可以採取三種等待,最智能的爲顯性等待WebDriverWait()
  2. 隱性等待和顯性等待同時存在時,取兩者中最長的等待時間爲有效等待時間

5、xpath 語法總結

xpath 語法內數組從1開始,不是從0開始

a = driver.switch_to_alert()

a = driver.switch_to.alert

a.send_keys(“輸入內容”)

time.sleep(2)

a.accept()

 

Path  //*[@id=“result_logo”] 相對路徑           //表示相對路徑 * 表示標籤名 

XPath 定位語法更精確,一般不用絕對路徑定位

對於這種文本屬性,語法:.//*[text()='文本內容']

 

 

 

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