正如標題所說,我遇到了一個問題,我打開了兩個標簽,試圖關閉所有的標簽,但只有一個,只要我關閉一個標簽,current_window_handle值就會被洗掉。然而,我確實注意到在window_handles串列中仍有我的視窗句柄。我想知道是否有其他人也遇到了這個問題。
有關的代碼:
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('http://example.com')
browser.execute_script("window.open('');")
window_id = browser.window_handles[-1]
browser.switch_to.window(window_id)
瀏覽器.關閉()
browser.get('https://google.ca')
selenium.common.exceptions.NoSuchWindowException: 訊息:沒有這樣的視窗:目標視窗已經關閉
selenium==3.141.0
chrome=93.0.4577.63。
ChromeDriver=93.0.4577.63。
uj5u.com熱心網友回復:
解決了這個問題。只需添加
window_id = browser.window_handles[0]
browser.switch_to.window(window_id)
來重置current_window_handle屬性。
所以現在的代碼是
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('http://example.com')
browser.execute_script("window.open('');")
window_id = browser.window_handles[-1]
browser.switch_to.window(window_id)
瀏覽器.關閉()
window_id = browser.window_handles[0]
browser.switch_to.window(window_id)
browser.get('https://google.ca')
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/327101.html
標籤:
