一尘不染

在Mac上使用Selenium WebDriver在Firefox中打开新标签页

selenium

我刚刚安装了Selenium Web Driver并进行了尝试。效果很好。我的用例可以描述如下:

  1. 在具有伪X服务器(Xvfb)的服务器上启动Firefox
  2. 新的Driver.Firefox()对象
  3. 打开10个标签,然后在每个标签中加载网页
  4. 从所有加载的页面检索html

唯一不起作用的步骤是步骤3。我无法找到如何打开新标签页。我在SO上找到了这一点:如何使用带有Java的SeleniumWebDriver打开新选项卡?但是,出于调试目的,我在Mac上进行了本地测试(即显示可见),并且发现Firefox浏览器(在创建驱动程序对象时打开)在按SO线程中的说明进行操作时未打开任何选项卡。所以我在这里尝试了这个:

driver = webdriver.Firefox()
driver.get("https://stackoverflow.com/")
body = driver.find_element_by_tag_name("body")
body.send_keys(Keys.CONTROL + 't')

正如我所说,这对我不起作用。那么,还有其他方法可以打开标签页吗?我使用Selenium 2.39(点安装Selenium)和Python 2.7。


阅读 420

收藏
2020-06-26

共1个答案

一尘不染

在OSX上打开新选项卡的组合键是Command + T,因此您应该使用

body.send_keys(Keys.COMMAND + 't')
2020-06-26