2017-05-26 9 views
0

私はアプリケーションをテストするレーキタスクを書いています。私はカピバラとポルターガイストが必要です。 rakeタスクは、次のようになります。データを解析からの主なサイトはまだです(CSSセレクタで変更なし)同じポルターガイストのHerokuレーキタスク

require "capybara" 
require "capybara/poltergeist" 
require "capybara/dsl" 

namespace :almet do 
    desc "Checking if something changed on tatar.ru" 
    task check_news: :environment do 
    Capybara.current_driver = :poltergeist 
    Browser = Class.new { include Capybara::DSL } 
    page = Browser.new.page 
    page.visit("http://almetyevsk.tatar.ru") 
    unless page.has_selector?(".home-events ul li") & 
     page.has_selector?(".home-events__item-lead") & 
     page.has_selector?(".home-events__item-date") & 
     page.has_selector?("h2 a") 
    then 
     alert 
    end 
    news_link = page.find(:css, "h2 a", match: :first)[:href] 
    page.visit(news_link) 
    unless page.has_selector?(".page__content-i h2") & 
     page.has_selector?(".page__content-i .news") & 
     page.has_selector?("i") 
    then 
     alert 
    end 
    end 

    def alert 
    AlertMailer.alert.deliver_now 
    end 
end 

このコードかどうかをチェックします。このrakeタスクは、ローカルに良い作品が、私はHerokuのにそれを押したとき、私は、エラーを持っている:

rake aborted! 
Cliver::Dependency::NotFound: Could not find an executable ["phantomjs"] on your path. 

私は、インストールさphantomJSこれをグーグルが、それでも同じエラーを得た(ポルターガイストphantomJSを使用して)。私の問題を解決することは可能ですか?

+0

PhantomjsをプロジェクトまたはHerokuに 'buildpack'として追加しましたか? –

答えて

0

あなたのHerokuインスタンスにPhantomJSをインストールする必要があります。通常は、あなたのためにインストールするビルドパックを追加することが含まれます。https://github.com/stomita/heroku-buildpack-phantomjs

関連する問題