如何使用硒网络驱动程序中的ruby脚本在chrome中打开新标签[重复]

Posted

技术标签:

【中文标题】如何使用硒网络驱动程序中的ruby脚本在chrome中打开新标签[重复]【英文标题】:how to open new tab in chrome using ruby script in selenium web driver [duplicate] 【发布时间】:2015-03-28 14:21:12 【问题描述】:

我是 Ruby 语言的新手。我想使用 selenium web 驱动程序使用 chrome 浏览器。我正在尝试在 chrome 浏览器中打开新标签。但我无法获取。请您检查以下代码一次。如果有任何问题,请告诉我

require 'selenium-webdriver'
$driver = Selenium::WebDriver.for :chrome
$driver.navigate.to "http://www.google.com/"
$driver.manage.timeouts.implicit_wait = 30

body = $driver.find_element(:tag_name,'body')
body .send_keys(:control,'t')
$driver.navigate.to "http://www.ask.com/"

输出:chrome 中的新选项卡未打开,第二个 url 也在同一个页面中打开,该页面已使用第一个 url 打开。

【问题讨论】:

【参考方案1】:

您应该使用 get 方法打开 URL,并且我已经更正了您的 find_element 方法,请尝试以下更新代码:

require 'selenium-webdriver'

driver = Selenium::WebDriver.for :chrome
driver.get('http://google.com/')
driver.manage.timeouts.implicit_wait = 30

body = driver.find_element(:tag_name => 'body')
body.send_keys(:control, 't')
driver.get('http://www.ask.com/')

希望以上内容能解决您的问题。

【讨论】:

我已经按照你的建议做了,但我仍然没有得到“新标签没有打开”。上面的代码在 Firefox 浏览器中运行良好,但在 chrome 中无法运行,请帮助我.... 你能更新你的 chrome 浏览器吗?可能是版本问题。 我用的是chrome最新版本40,哪个版本的chrome浏览器支持selenium 2.44,请给我建议 你能告诉我你把你的“chromedriver.exe”放在哪里了吗?? chromedriver.exe的路径是“C:\Ruby\bin”,这个路径是在环境变量中设置的

以上是关于如何使用硒网络驱动程序中的ruby脚本在chrome中打开新标签[重复]的主要内容,如果未能解决你的问题,请参考以下文章

硒 - 蟒蛇。如何捕获网络流量的响应[重复]

如何等到硒python中的元素可用

如何使用硒清除或替换输入字段的内容?

尝试运行脚本时如何解决mac上的硒问题

如何用硒滚动页面

如何用硒滚动页面