2017-07-07 5 views
2

私はHeroku上で動作するノードアプリケーションを持っています。私はPythonでセレンを使ってウェブサイトを掻き集め、必要な時にはいつでも私のノードアプリケーションからpythonスクリプトを呼び出しています。 MacにPhantomJSをインストールしました。アプリケーションをローカル(ノードindex.js)で実行すると、すべて正常に動作します。Heroku上のPhantomJSパス

path_to_phantom = '/Users/govind/Desktop/phantomjs-2.1.1- 
macosx/bin/phantomjs' 

browser = webdriver.PhantomJS(executable_path = path_to_phantom) 

しかし、何もヘロクでは動作しないようです。私もPhantomJS buildpackを私のノードのアプリケーションに追加しましたが、pythonスクリプトは呼び出されません。私が思う問題はPhantomJS buildpackへの道です。どのようなパスを追加する必要がありますか?それとも私がここで紛失している他の側面がありますか?

+0

これを解決できましたか?私は同じ問題を抱えています。 – simeg

+0

残念ながら、いいえ。 – Govind

+0

私はこれを解決することができました。私の答えを見てください。 – simeg

答えて

1

私は以下の手順に従ってHerokuのにデプロイする私のPythonアプリケーションでPhantomJSとセレンを使用するために管理:

1)私のHerokuのアプリケーション

$ heroku stack:set cedar-14 

2にシーダー-14スタックを使用するスイッチ)をインストールPhantomJSは、私はその後、ウェブサイト

を取得するためにセレンを使用することができますこれらの変更により

$ heroku buildpacks:add https://github.com/stomita/heroku-buildpack-phantomjs 

をbuildpack

from selenium import webdriver 

browser = webdriver.PhantomJS() 
browser.get("http://www.google.com") # This does not throw an exception if it got a 404 

html = browser.page_source 
print html # If this outputs more than just '<html><head></head><body></body></html>' you know that it worked 
関連する問題