Introduction: In the course of the page operation sometimes click a link will pop up a new window, but because of all the operations in the first Selenium is an open pages, then you need to master to switch to the newly opened window operating. WebDriver provides
switch_to.window()
methods, it may be implemented to switch between different windows. Home to Baidu and Baidu registration page, for example, to switch between the two windows.
The key method used in this chapter as follows:
- current_window_handle: get the current window handle
- window_handles: Returns the handle of all windows to the current session
- switch_to.window (): for switching to the appropriate window
Go to the registration page and get the handle all the pages, and each page of the print title
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
time.sleep(2) #睡两秒,看一下效果
driver.find_element_by_link_text('登录').click()
time.sleep(2) #睡两秒,看一下效果
driver.find_element_by_link_text("立即注册").click()
time.sleep(2) #睡两秒,看一下效果
# 获得当前窗口句柄
sreach_windows = driver.current_window_handle
# 获得当前所有打开的窗口的句柄
all_handles = driver.window_handles
for handle in all_handles:
if handle != sreach_windows:
driver.switch_to.window(handle)
print(driver.title)
else:
print('当前页面title:%s'%driver.title)
driver.quit()
Selenium anthology Portal:
title | Brief introduction |
---|---|
Python crawler - Selenium (1) easy to install and use | Details of installation and simple to use Selenium is dependent on the environment of Windows and Centos7 |
Python crawler - Selenium (2) and positioning elements common methods WebDriver | Details of the positioning element 8 ways and cooperate click and enter, submit, using the method of obtaining information assertion |
Python crawler - Selenium (3) common method of controlling the browser | Details of using a custom browser window or full-screen size, browser control back, forward, refresh your browser and other methods of |
Python reptile - Selenium (4) configuration parameters startup items | Details of the configuration parameters Selenium startup items including no interface mode, the browser window size, the browser User-Agent (request header), etc. |
Python reptile - Selenium (5) mouse events | Details of use of right-click, double click, drag, hover, etc. |
Python reptile - Selenium (6) key events | Details of operation of the keyboard, includes almost all common keycaps and key combinations |
Python crawler - Selenium (7) multi-window switch | Selenium is described in detail how to implement the freedom to switch between different windows |
Python crawler - Selenium (8) frame / iframe nested form page | Details of how to switch from the current positioning of the body frame / iframe embedded in a page form |
Python crawler - Selenium (9) alert box (pop) Processing | Details of how to locate and deal with many types of warning popups |
Python crawler - Selenium (10) treated drop-down box | Details on how to locate and deal with flexible drop-down box |
Python reptile - Selenium (11) file upload | Details of how elegant by send_keys () the specified file upload |
Python reptile - Selenium (12) for login Cookies, Cookies automatically log in and add | Details of how to obtain and use Cookies Cookies for automatic logon |
Python crawler - Selenium (13) element disposed wait | Details how elegant set of elements waiting time, to prevent the program from running too fast positioning element failure |
Python crawler - Selenium (14) screen shot | Details on how to use the screen shot |
Python reptile - Selenium (15) closes the browser | Close the window detailed describes two differences |
Welcome Message Tucao