相关疑难解决方法(0)

Heroku:使用Watir/Selenium时无法连接到chromedriver 127.0.0.1:9515

它在本地运行(未指定driver_path),但不在Heroku上运行.

码:

Selenium::WebDriver::Chrome.driver_path = ENV['GOOGLE_CHROME_SHIM']
browser = Watir::Browser.new :chrome
Run Code Online (Sandbox Code Playgroud)

我在heroku rails控制台中确认了以下值

ENV['GOOGLE_CHROME_BIN'] => "/app/.apt/opt/google/chrome/chrome"
ENV['GOOGLE_CHROME_SHIM'] => "/app/.apt/usr/bin/google-chrome-stable"
Run Code Online (Sandbox Code Playgroud)

已安装的Buildpacks:

https://github.com/heroku/heroku-buildpack-chromedriver
https://github.com/heroku/heroku-buildpack-google-chrome
Run Code Online (Sandbox Code Playgroud)

当前错误:

Selenium :: WebDriver :: Error :: WebDriverError:无法连接到chromedriver 127.0.0.1:9515

搜索unable to connect to chromedriver 127.0.0.1:9515SO返回一堆结果,但没有提到heroku.


也:

我考虑过phantomjs.其他人在这里工作, 使用带有Heroku Rails Unicorn堆栈的无头浏览器

但它被弃用了.在本地运行时出现以下错误.

不赞成使用PhantomJS的Selenium支持.请改用无头Chrome/Firefox或HTMLUnit.


也试过:

为了透明,我也尝试了以下内容.

更改 browser = Watir::Browser.new :chrome

browser = Watir::Browser.new :chrome, headless: true

虽然我没想到这会起作用.


还试过:

删除: https://github.com/heroku/heroku-buildpack-chromedriver

添加: https://github.com/heroku/heroku-buildpack-xvfb-google-chrome.

添加headless宝石.

并运行watirgem页面中给出的以下脚本,http://watir.com/guides/headless/.

require 'watir'
require 'headless'
headless …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku watir selenium-chromedriver buildpack

14
推荐指数
1
解决办法
2115
查看次数