Подтвердить что ты не робот

Не удалось найти фантомы

Получение следующей ошибки при попытке использования phantomjs из ruby ​​на Ubuntu:

 Failure/Error: visit root_path
 Cliver::Dependency::NotFound:
   Could not find an executable ["phantomjs"] on your path.
 # ./spec/features/search_spec.rb:17:in `block (2 levels) in <top (required)>'
 # ./spec/support/vcr.rb:23:in `block (3 levels) in <top (required)>'
 # ./spec/support/vcr.rb:23:in `block (2 levels) in <top (required)>'

phantomjs был создан локально и добавлен в PATH. Как сделать ruby ​​find phantomjs?

4b9b3361

Ответ 1

Вместо того, чтобы строить локально, используйте homebrew на вашем mac с brew install phantomjs, и все пути будут связаны после. У меня была эта ошибка сама, и вы получите ссылки бесплатно и сможете легко обновлять.

Ответ 2

Вы также можете сделать

$ sudo apt-get install phantomjs                               

Это должно автоматически добавлять phantomjs на ваш путь и делать все остальное, необходимое для правильной работы. Это сработало для меня.

Ответ 3

Для Mac Os El Capitan используйте следующую команду:

npm install -g phantomjs

Выше команда работает, только если вы установили npm, для установки npm:

 brew install npm

Ответ 4

добавить в Gemfile

gem 'phantomjs', :require => 'phantomjs/poltergeist'

или введите код ниже в spec_helper.rb

require 'phantomjs' 
Capybara.register_driver :poltergeist do |app|
    Capybara::Poltergeist::Driver.new(app, :phantomjs => Phantomjs.path)
end

https://github.com/colszowka/phantomjs-gem

Ответ 5

По-видимому, решение заключалось в том, чтобы добавлять фантомы не только к PATH, но и создавать ссылки:

sudo ln -s /home/myuser/phantomjs/bin/phantomjs /usr/bin/phantomjs
sudo ln -s /home/myuser/phantomjs/bin/phantomjs /usr/local/bin/phantomjs
sudo ln -s /home/myuser/phantomjs/bin/phantomjs /usr/local/share/phantomjs

Откорректируйте пути /home/myuser/phantomjs/bin/phantomjs, чтобы соответствовать пути к двоичному файлу phantomjs на вашем компьютере.

Ответ 6

Другим возможным решением является добавление прав на файл в файл:

# download phantomjs
$ curl --output /home/user/.rvm/bin/phantomjs https://s3.amazonaws.com/circle-downloads/phantomjs-2.1.1
# set rights 
$ chmod +x /home/user/.rvm/bin/phantomjs
# check
$ which phantomjs
/home/user/.rvm/bin/phantomjs

И также не рекомендуется poltergeist использовать phantomjs из официальных репозиториев Ubuntu:

НЕ используйте phantomjs из официальных репозиториев Ubuntu, так как это не работает с полтергейстом.