使用selenium切换到python中的popup

2024-04-26 03:04:47 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在下面的selenium程序中切换到弹出窗口。我已经寻找了所有可能的解决方案,但还没能找到答案。请帮忙!!

from selenium import webdriver
from splinter import Browser
from selenium.webdriver.common.keys import Keys
handle = []
driver = webdriver.Firefox()
driver.get("http://example.com/test.aspx")

driver.find_element_by_link_text("Site Actions").click()
driver.find_element_by_link_text('Edit Page').click()
select = driver.find_element_by_id('ctl00_PlaceHolderMain_ctl35_ctl00_SelectResult')
for option in select.find_elements_by_xpath('//*[@id="ctl00_PlaceHolderMain_ctl35_ctl00_SelectResult"]/option'):
            if option.text != 'Channel':
                option.select() # select() in earlier versions of webdriver

driver.find_element_by_id('ctl00_PlaceHolderMain_ctl35_ctl00_RemoveButton').click()

parent_h = driver.current_window_handle

#click that activates the popup.
checkIn = driver.find_element_by_id('qaCheckin_anchor').click()

# click on the link that opens a new window
handles = driver.window_handles # before the pop-up window closes
driver.remove(parent_h)
driver.switch_to_window(handles.pop())
driver.implicitly_wait(10) # seconds
driver.find_element_by_xpath('/html/body/form/div[3]/table/tbody/tr[4]/td/table/tbody/tr[3]/td[2]/input').click()
driver.find_element_by_name('btnClose2').click()
driver.close();
# do stuff in the popup
# popup window closes
driver.switch_to_window(parent_h)
# and you're back

driver.switch_to_default_content()

Tags: thefromimportidbydriverseleniumelement

热门问题