1. 程式人生 > >selenium學習過程中的坑:message: no such element: Unable to locate element:

selenium學習過程中的坑:message: no such element: Unable to locate element:

selenium使用過程中的坑

  • 使用class標籤定位時報錯:
    message: no such element: Unable to locate element: {"method":"class name"

在測試過程中,定位一個驗證碼圖片時,由於執行速度過快,瀏覽器還沒有接收到服務端發出的資訊,導致無法找到該class資訊。

解決方法:

1.

def drag_code(self):
	time.sleep(0.5) #在執行查詢之前,加一個延時time.sleep(0.5) #在執行查詢之前,加一個延時
	image_info = self.track.get_image()

增加延時簡單粗暴,但是並不靈活。

2.

	self.driver.implicitly_wait(10)
	hehe = self.driver.find_element_by_class_name("verify-img-panel")

增加一個自動檢測,如果10秒內還未成功,則報錯。假如後續網站訪問速度加快,則可以減少程式執行等待的時間。