2022年9月6日 星期二

2002/6/24 發佈的 Selenium 4.3.0 正式移除 find_element_by_* 及 find_elements_by_* 函式

應該感謝這些 breaking changes 讓攻城獅/程序猿等眾動物有口飯吃(嗎?)

配合一些 Selenium 比較聰明的等待機制,而不要呆呆的 sleep(10000)

大概的SOP如下:

  1. 匯入要用的模組,例如
    1. from selenium import webdriver
    2. from selenium.webdriver.support.ui import Select
    3. from selenium.webdriver.common.by import By 
    4. from selenium.webdriver.support.ui import WebDriverWait
    5. from selenium.webdriver.support import expected_conditions as EC
  2. 設定等待秒數上限
    1. timeout = WebDriverWait(driver, 10)
  3. 使用組合拳
    1. timeout.until(EC.element_to_be_clickable(driver.find_element(By.ID, 'login_button'))).click()

較詳細的 api 說明可參考 python自動化測試工具selenium使用指南 ,但請忽略 find_element_by_*



沒有留言:

張貼留言