如何控制 Selenium 驱动程序创建的"childs" Firefox 实例



有一个网页,我想用Selenium控制,使用Python作为脚本语言。但是当我尝试在 Selenium 驱动程序中打开它时,URL 不是在同一个 Selenium 浏览器(驱动程序(中打开,它会打开浏览器的另一个实例并在那里加载 URL,Selenium 无法控制。

我怎样才能防止这种情况发生,并强制 URL 在同一浏览器实例(Selenium 驱动程序(中打开/加载?

您可以通过组合键 COMMAND + T 或 COMMAND + W (OSX( 来实现选项卡的打开/关闭。在其他SO上,您可以使用CONTROL + T/CONTROL + W。

在硒中,你可以模仿这种行为。您将需要创建一个 Web 驱动程序和所需测试的任意数量的选项卡。

这是代码。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get("http://www.google.com/")
#open tab
driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 't') 
# Load a page 
driver.get('http://stackoverflow.com/')
# Make the tests...
# close the tab
driver.find_element_by_tag_name('body').send_keys(Keys.COMMAND + 'w') 
driver.close()

最新更新