【发布时间】:2019-12-25 07:21:14
【问题描述】:
如果您单击 Web 浏览器以外的 Windows 程序中的链接,则会出现一个弹出窗口。我想获取这个弹出窗口的 url。弹窗只会在 IE 中打开。
driver = webdriver.Ie('C://Users/aaa/IEDriverServer.exe')
driver.implicitly_wait(3)
pyautogui.moveTo(1576, 660)
pyautogui.click()
time.sleep(3)
driver.switch_to_window(driver.window_handles[1])
# error =>driver.switch_to_window(driver.window_handles[1])
# IndexError: list index out of range
driver.get_window_position(driver.window_handles[1])
windows = driver.window_handles
# Commenting out the above two lines will result in only one active web
# browser in windows.
print(windows)
driver = webdriver.Ie('C://Users/seula/IEDriverServer.exe')
driver.implicitly_wait(3)
pyautogui.moveTo(1576, 660)
pyautogui.click()
time.sleep(3)
driver.switch_to_window(driver.window_handles[1])
# error =>driver.switch_to_window(driver.window_handles[1])
# IndexError: list index out of range
driver.get_window_position(driver.window_handles[1])
windows = driver.window_handles
# Commenting out the above two lines will result in only one active web
# browser in windows.
print(windows)
在此源中,运行 IEDriver.exe 会打开一个 localhost 窗口,并在您使用 pyautogui 单击 Windows 程序的链接时弹出。 但是,如果我检查 driver.window_handles,则只显示 localhost 窗口并且无法识别弹出窗口。如何获取弹窗网址?
【问题讨论】:
标签: python selenium selenium-webdriver webdriverwait window-handles