2016-11-06 11 views
5

セルローンをフラスコ内でローカルに実行しています。 ImはPhantomJSドライバを使用しています。私は以前にパスエラーが発生しました:WebDriverException:メッセージ: 'phantomjs'実行ファイルに不正なアクセス許可がある可能性があります

selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable needs to be in PATH. 
しかし、別のStackOverflowの質問から発見した後、私はPhantomJSのパラメータとして環境パスを渡す必要があることを学んだ

。私が下にあるパスは、仮想環境フォルダ内のphantomJSフォルダへのパスです。

driver = webdriver.PhantomJS(executable_path='/Users/MyAcc/Documents/MYWEBAPP/venv/lib/python3.5/site-packages/selenium/webdriver/phantomjs') 

しかし、私は今、新しいエラーコードを取得する:

selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable may have wrong permissions. 

は、ここで私は、パスのファイルのパーミッションをチェックするとき、私は何を得るのです。

total 40 
drwxr-xr-x 7 USER staff 238 Nov 6 00:07 . 
drwxr-xr-x 17 USER staff 578 Nov 6 00:03 .. 
[email protected] 1 USER staff 6148 Nov 6 00:07 .DS_Store 
-rw-r--r-- 1 USER staff 787 Oct 31 12:27 __init__.py 
drwxr-xr-x 5 USER staff 170 Oct 31 12:27 __pycache__ 
-rw-r--r-- 1 USER staff 2587 Oct 31 12:27 service.py 
-rw-r--r-- 1 USER staff 2934 Oct 31 12:27 webdriver.py 
+0

ディレクトリ 'ls -al' - ' rwxrwxrwx'を指定すると、どのファイルにこの許可が与えられますか? – furas

+0

'総40' ' drwxr-XR-X 7 USERスタッフ238 11月6日午後12時07 .' 'drwxr-XR-X 17 USERスタッフ578 11月6日午後12時03 ..' '-rw-rを--r - @ 1ユーザースタッフ6148 Nov 6 00:07 .DS_Store' '-rw-r - r-- 1 USER staff 787 Oct 31 12:27 __init __。py' ' drwxr-xr-x 5ユーザスタッフ170 Oct 31 12:27 __pycache__' '-rw-r - r-- 1ユーザスタッフ2587 Oct 31 12:27 service.py' ' -rw-r - r-- 1ユーザスタッフ2934 Oct 31 12:27 webdriver.py' – Tahir

+0

あなたは問題を解決しましたか? Thasnk you –

答えて

0

executable_path = './phantomjs-2.1.1-linux-x86_64/bin/phantomjs'

service_log_path = './log/ghostdriver.log'

driver = webdriver.PhantomJS(executable_path=executable_path, service_log_path=service_log_path)

あなたは相対パスと絶対パスの両方を使用することができます。

0

selenium.common.exceptions.WebDriverException:メッセージ: 'phantomjs'実行ファイルに不正なアクセス許可がある可能性があります。

この間違い、phantomjsは限りphantomjs用として、実行権限をしなかったので - 2.1.1 - Linuxの - x86_64版/ binに/ phantomjsが実行権限を追加し、chmodのU + X phantomjs

希望はあなたが助けることができますあなた

+0

ようこそ、スタックオーバーフローへの回答を2回投稿しないで、最初の答えを編集し、そこに変更して、[回答を書く方法]を読んで時間を過ごす(http://stackoverflow.com/help/how-to-回答)。 – Hizqeel

-1

私にとっては、にphantomjsを置き、いくつかのシンボリックリンクを追加することで修正されました。私はthese steps続く:

  • 動きを/usr/local/share/にphantomjsフォルダ:
    • sudo mv phantomjs-2.1.1-linux-x86_64.tar.bz2 /usr/local/share/.
  • 作成シンボリックリンク:
    • sudo ln -s /usr/local/share/phantomjs-1.8.1-linux-x86_64 /usr/local/share/phantomjs
    • sudo ln -s /usr/local/share/phantomjs-1.8.1-linux-x86_64 /usr/local/share/phantomjs

私はLinuxのエキスパートではありません。理由は分かりません。誰かがピッチをしたいと思ったら、自由に感じてください。

1

私は/usr/local/binにphantomjsファイルを配置して正常に動作しました。

0

私はpython + phanomjsの前にこの問題に遭遇しました。 ソリューション: linux ---/usr/local/shareにphantomjsを置く。 windows ---/python/scriptsにphantomjsを入れます。 希望ヘルプ

1

さて、私はこの次のコードによって解決得た:

ブラウザ= webdriver.PhantomJS(executable_path = "/usr/local/Cellar/phantomjs/2.1.1/bin/phantomjs")

+0

それはまた窓10の私のために働く。最後の "phantomjs"は、折り畳みではなく、phantomjs.exeです。 – Renke

関連する問題