python頁面加載的等待方式
1、顯式等待
它指定要查找的節點,然后指定一個最長的等待時間,如果規定時間內加載出來了這個節點,就返回查找的節點;如果規定時間內沒有加載出該節點,就拋出超時異常。
fromseleniumimportwebdriver
fromselenium.webdriver.common.byimportBy
fromselenium.webdriver.support.uiimportWebDriverWait
fromselenium.webdriver.supportimportexpected_conditionsasEC
broswer=webdriver.Chrome()
broswer.get('https://www.jd.com/')
wait=WebDriverWait(broswer,20)
input_q=wait.until(EC.presence_of_element_located((By.ID,'key')))
button=wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,'.button')))
print(input_q,button)
2、隱式等待
當使用隱式等待執行測試的時候,如果Selenium沒有在DOM中找到節點,將繼續等待,超出設定時間后,則拋出找不到節點的異常。換句話說,當查找節點而節點并沒有出現的時候,隱式等待將等待一段時間再查找DOM,默認時間是0,示例如下:
fromseleniumimportwebdriver
browser=webdriver.Chrome()
browser.implicitly_wait(10)
browser.get('https://www.jd.com/')
input_q=browser.find_element_by_class_name('button')
print(input_q)
以上就是Python頁面加載的等待方式,希望能對大家有所幫助。更多Python學習教程請關注IT培訓機構:千鋒教育。