打开选项卡,关闭选项卡,并使用Selenium退出Mac上的Firefox?

时间:2017-12-17 07:28:29

标签: python python-2.7 selenium

我一直在寻找答案,但我无法让我的代码工作。我想要发生的是,我可以打开一个选项卡,打开一个新的网页,然后关闭相同的选项卡。从那里,一旦我完成了我的工作,我希望它退出该计划。截至目前,它不会打开新选项卡,关闭新选项卡,并退出应用程序。现在做的是,它打开谷歌,然后在同一个标​​签中加载stackoverflow。

现在,我有......

driver = webdriver.Firefox()
driver.get("https://www.google.com")
time.sleep(5)
driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 't')
time.sleep(5)
driver.get("https://www.stackoverflow.com")
time.sleep(5)
driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 'w')
time.sleep(5)
driver.Dispose()

有没有人有任何想法?

由于

1 个答案:

答案 0 :(得分:2)

尝试以下代码以获得所需的结果:

driver = webdriver.Firefox()
driver.get("https://www.google.com")
# Get current window/tab ID
current_window = driver.current_window_handle
# Open StackOverflow in new window/tab
driver.execute_script("window.open('https://www.stackoverflow.com')")
# Get new window/tab ID
new_window = [window for window in driver.window_handles if window != current_window][0]
# Switch to new window/tab
driver.switch_to.window(new_window)
# Close new window/tab
driver.close()
# Switch to initial window/tab
driver.switch_to.window(current_window)
# Quit Webdriver
driver.quit()