我在Windows上使用Python 2.7中的Firefox Webdriver来模拟打开(Ctrl+t)和关闭(Ctrl + w)一个新标签页。
下面是我的代码:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser = webdriver.Firefox()
browser.get('https://www.google.com')
main_window = browser.current_window_handle
# open new tab
browser.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 't')
browser.get('https://www.yahoo.com')
# close tab
browser.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 'w')
如何在Mac上实现同样的效果?根据这条评论,人们应该使用browser.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 't')
来打开一个新的标签页,但我没有Mac来测试它,那么Ctrl-w
的等价物呢?
谢谢你!
6条答案
按热度按时间wf82jlnq1#
没有什么比运行JavaScript更简单、更清晰的了。
打开新标签页:
driver.execute_script("window.open('');")
qoefvg9y2#
打开新选项卡:
关闭选项卡:
切换到选项卡:
6ljaweal3#
您可以选择要关闭的窗口:
切换 windows :
然后关闭它:
ntjbwcob4#
下面的代码基于Python 2.7和Chrome的一个驱动程序。
打开新选项卡的方式:
driver.execute_script("window.open('"+URL+"', '__blank__');")
,其中URL是一个字符串,例如“http://www.google.com“。关闭选项卡方式:
driver.close()
[请注意,当您只打开1个选项卡时,此选项卡也会加倍为driver.quit()
]。通过以下方式在选项卡之间导航:
driver.switch_to_window(driver.window_handles[0])
和driver.switch_to_window(driver.window_handles[1])
中的至少一个。epggiuax5#
打开新标签页:
切换到新标签页:
c8ib6hqw6#
恕我直言,以上所有答案都没有完全解决关闭窗口中的一个选项卡而不关闭整个窗口或打开一个空白选项卡的原始问题。
我解决方案: