selenium之窗口操作

前言

webdriver经常会遇到在多个窗口之间切换的操作,例如在A窗口操作某个元素跳转到B窗口,然后又进入C窗口,此时如果需要进入A\B窗口操作就需要用到特殊的窗口处理方法

窗口处理方法

获取所有窗口句柄:driver.window_handles

获取当前窗口的句柄:driver.current_window_handle

切换窗口:driver.switch_to.window(handle)

循环判断窗口:

mainWindows = driver.current_window_handle

for handle in driver.window_handles:
driver.switch_to.window(handle)
if '华为消费者业务官网' in driver.title:
checkHuawei()
elif '华为应用市场' in driver.title:
checkAppMarket()
elif '华为商城' in driver.title:
checkVmall()

driver.switch_to.window(mainWindows)

PS:

关闭浏览器:driver.quit()

关闭当前标签页:driver.close()

浏览器最大化:driver.maximize_window()

浏览器最小化:driver.minimize_window()

页面截屏:driver.get_screenshot_as_file("a.png")

页面滚动:

from selenium.webdriver import ActionChains
ActionChains(driver).move_to_element(driver.find_element_by_css_selector('.inlandWeatherForecastContent')).perform()

猜你喜欢

转载自www.cnblogs.com/xiao-qing/p/9400721.html