webdriver.get(url) 到一個頁面後,會等到頁面載入完成(onload 事件觸發) ,然後再將控制權交回給測試 script。
在網路不穩定的情況下,或網站也些問題時,等到頁面 onload 可能非常久。
webdriver.get 預設的 timeout 在某些不同的 webdriver 中可能到5分鐘之久。
所以可以用 set_page_load_timeout()
設定一個最長的頁面等待時間:
from selenium import webdriver
driver = webdriver.Chrome()
driver.set_page_load_timeout(20) #傳入最長等待秒數
try:
driver.get("http://www.example.com")
except TimeoutError:
print("Timed out waiting for page to load.")
以上將頁面的最長等待時間設為20秒,等候頁面超過20秒會拋出 TimeoutError。
沒有留言:
張貼留言