python使用selenium如何获取到一个新打开chrome窗口的句柄
情况是这样的,我使用selenium操控chrome打开一个网站,点击一个按钮后,会调用本机的chrome再打开一个新窗口(相当于一个新浏览器进程)进入目标系统(无法直接通过输入url访问目标系统),请问我怎么才能获取到这个新窗口的句柄呢?
目前使用了
handles=driver.window_handles;driver.switch_to.window(handles[-1])好像并不行
from selenium.webdriver.chrome.options import Optionsimport time
options = Options()
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation', 'enable-logging'])
driver = webdriver.Chrome(chrome_options=chrome_options)
def main():
page = driver.get('https://www.baidu.com')
print(driver.title)
handles=driver.window_handles
print(handles)
driver.switch_to.window(handles[-1])
while 1:
#if driver.title=='新浪首页':
#print(driver.title)
#else:
#time.sleep(10)
#driver.find_element_by_id('loginBtn').click()
if __name__ == "__main__":
回答:
(无法直接通过输入url访问目标系统) driver.get('https://www.baidu.com') 你这不是进入百度了吗。 那此时的driver就是百度句柄。
当你再次 driver.get('https://xxx') 产生了2个窗口 那就需要driver.switch_to.window(handles[0])切回百度
以上是 python使用selenium如何获取到一个新打开chrome窗口的句柄 的全部内容, 来源链接: utcz.com/p/937945.html