У меня есть веб-страница, открывающая новое окно браузера по клику.Я могу получить 2 дескриптора, однако driver.close () всегда закрывает первое / главное окно.
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("file:///D:/blackhole/print.html")
han = driver.window_handles
print("handles:", han) # gets 1 handle
time.sleep(2)
click_btn = driver.find_element_by_link_text('Print')
click_btn.click()
han = driver.window_handles
print("handles:", han) # gets 2 handles
driver.switch_to_window = han[1] # first element is always first window handle
driver.close() # main window close
Ниже кода веб-страницы, который вызывает новое окно
<a href="print.html"
onclick="window.open('popprint.html',
'newwindow',
'width=300,height=250');
return false;"
>Print</a>
То же поведение для Firefoxтакже.Python 3.6.7