当谈到Selenium的高级用法时,通常指的是更复杂、更灵活的用法,用来处理各种不同的情况和需求。这些用法可以帮助你更有效地测试网站,模拟用户操作,以及处理各种动态和复杂的网页交互。以下是一些Selenium的高级用法:
1. 显式和隐式等待(Explicit & Implicit Waits)
-
显式等待: 使用
WebDriverWait来等待某个特定条件的出现或超时,例如等待元素可见、存在、可点击等。from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC element = WebDriverWait(driver, 10).until( EC.presence_of_element_located((By.ID, "myElement")) ) -
隐式等待: 在全局设置下,等待一定的时间,直到元素出现,或者达到最大超时时间。
driver.implicitly_wait(10) # 等待最多10秒
2. 处理多窗口和IFrame
-
切换到新窗口:
window_before = driver.window_handles[0] driver.switch_to.window(driver.window_handles[1]) -
切换到IFrame:
driver.switch_to.frame("iframe_name")

最低0.47元/天 解锁文章
410

被折叠的 条评论
为什么被折叠?



