selenium 选项卡问题(弹出新页面无法定位到新的页面)

版权声明:嘿呀要是转载麻烦附上个我网页连接就好了hhh https://blog.csdn.net/zyf2333/article/details/81477421

如题,当我使用selenium操作打开一个新的选项卡的时候(如下图),无法从当前所处的页面定位到新的页面上(如下图,打开了新的页面,但再次发起请求时只能在百度的页面上跳转到淘宝页面)

from selenium import webdriver
import time

browser=webdriver.Chrome()
browser.get('https://www.baidu.com')
browser.execute_script('window.open()')
browser.get('https://www.taobao.com')

这里写图片描述

解决方案:使用switch_to_window方法,定位到新打开的页面,而新打开的页面的地址为window_handles[1]

修改后代码如下:

from selenium import webdriver
import time

browser=webdriver.Chrome()
browser.get('https://www.baidu.com')
#打开一个新页面
browser.execute_script('window.open()')
#定位到新的页面
browser.switch_to_window(browser.window_handles[1])
browser.get('https://www.taobao.com')
time.sleep(1)
#定位回原来的页面
browser.switch_to_window(browser.window_handles[0])
browser.get('https://python.org')

这里写图片描述

根据代码可发现,先定位到新的页面,并跳转到淘宝。然后定位回原先的页面,并从百度跳转到python官网

没有更多推荐了,返回首页