码迷,mamicode.com
首页 > 其他好文 > 详细

6_6 模拟浏览器的前进后退&窗口句柄切换

时间:2020-06-20 23:58:20      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:print   from   oba   hand   code   web   int   http   selenium   

一、可以使用driver.get()方法打开多个窗口但是会覆盖,所以可以用前进后退进行操作

from selenium import webdriver
import time

driver_path = r"D:\install\chromedriver\chromedriver.exe"
driver = webdriver.Chrome(executable_path = driver_path)

#模拟浏览器的前进后退
driver.get(https://www.baidu.com/)
driver.get(https://www.taobao.com)
driver.back()       # 后退到前一个页面
time.sleep(5)
driver.forward()    # 前进到前一个页面
time.sleep(3)
driver.close()

二、打开多个窗口及窗口间切换(重要)

 1 """"""
 2 
 3 
 4 from selenium import webdriver
 5 
 6 driver_path = r"D:\install\chromedriver\chromedriver.exe"
 7 driver = webdriver.Chrome(executable_path = driver_path)
 8 
 9 # 打开多窗口页面
10 driver.get(https://www.baidu.com/)
11 driver.execute_script("window.open(‘https://www.taobao.com‘)")
12 print(driver.current_url)       # https://www.baidu.com/
13 # 获取所有窗口句柄
14 all_h = driver.window_handles
15 print(all_h)
16 # 切换窗口句柄
17 driver.switch_to.window(all_h[-1])      # 切换到最后一个
18 print(driver.current_window_handle)
19 print(driver.current_url)       #https://www.taobao.com/
20 
21 """
22 虽然在窗口中切换到了新的页面,但是driver中还没有切换
23 如果想要在代码中切换到新的页面,并进行爬取,那么要使用driver.switch_to.window()来指定切换的窗口
24 可以从driver.window_handles中获取窗口句柄,并进行选取。它是以窗口打开的顺序存储窗口的句柄。
25 """

 

6_6 模拟浏览器的前进后退&窗口句柄切换

标签:print   from   oba   hand   code   web   int   http   selenium   

原文地址:https://www.cnblogs.com/sruzzg/p/13170758.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!