selenium 設定等待時間
阿新 • • 發佈:2019-01-23
1 sleep(time)
import time
time.sleep(10)
強制等待時間。不管瀏覽器是否載入完成,都必須強制等待10s時間
2 implicity_wait(time)
隱性等待是瀏覽器在time時間內載入完成則繼續執行。
隱性等待對整個driver都有作用,只需要設定一次
3 WebDriverWait(driver, timeout, poll_frequency=0.5, ignored_exceptions=None)
driver:WebDriver 的驅動程式(Ie, Firefox, Chrome 或遠端)
timeout:最長超時時間,預設以秒為單位
poll_frequency:休眠時間的間隔(步長)時間,預設為 0.5 秒
ignored_exceptions:超時後的異常資訊,預設情況下拋 NoSuchElementException 異常
配合until和until_not使用
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome()
driver.get("xxxxxx")
try:
WebDriverWait(driver, 20).until(lambda x : driver.find_element_by_xpath("xxxx") )
finally:
driver.close()