前提・実現したいこと
https://review-of-my-life.blogspot.com/2017/10/python-web-scraping-data-collection-analysis.html
上記のサイトの通りにスクレイピングをやりたかったのですが、PhantomJSのパス指定で以下のエラーが出てしまいます。
なぜ取得したパスをPhantomJS()の引数に指定したにもかかわらずエラーが出てしまうのでしょうか。
発生している問題・エラーメッセージ
selenium.common.exceptions.WebDriverException: Message: 'phantomjs.exe' executable needs to be in PATH.
該当のソースコード
Python3
1import os 2file=os.path.abspath("phantomjs.exe") 3print(file) 4#出力結果→/home/ec2-user/environment/phantomjs.exe 5 6from selenium import webdriver 7browser=webdriver.PhantomJS(executable_path="/home/ec2-user/environment/phantomjs.exe")
試したこと
phantomjsの場所をプロパティで確認しコピペしましたが同様のエラーメッセージが出てしまいます。
browser=webdriver.PhantomJS(executable_path="C:\Users\user\Downloads\phantomjs-2.1.1-windows\phantomjs-2.1.1-windows")
#エラーメッセージ
/home/ec2-user/.pyenv/versions/3.6.5/lib/python3.6/site-packages/selenium/webdriver/phantomjs/webdriver.py:49: UserWarning: Selenium support for PhantomJS has been deprecated, please use headless versions of Chrome or Firefox instead
warnings.warn('Selenium support for PhantomJS has been deprecated, please use headless '
Traceback (most recent call last):
File "/home/ec2-user/.pyenv/versions/3.6.5/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 76, in start
stdin=PIPE)
File "/home/ec2-user/.pyenv/versions/3.6.5/lib/python3.6/subprocess.py", line 709, in init
restore_signals, start_new_session)
File "/home/ec2-user/.pyenv/versions/3.6.5/lib/python3.6/subprocess.py", line 1344, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'phantomjs': 'phantomjs'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "trendAnalytics.py", line 22, in <module>
browser=webdriver.PhantomJS()
File "/home/ec2-user/.pyenv/versions/3.6.5/lib/python3.6/site-packages/selenium/webdriver/phantomjs/webdriver.py", line 56, in init
self.service.start()
File "/home/ec2-user/.pyenv/versions/3.6.5/lib/python3.6/site-packages/selenium/webdriver/common/service.py", line 83, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable needs to be in PATH.
補足情報(FW/ツールのバージョンなど)
clound9上で実行しています。(Linuxサーバー)
PCのOSはWindows10です。
ここにより詳細な情報を記載してください。
あなたの回答
tips
プレビュー