PythonでPhantomJSが使えない
python3.4
PhantomJS 2.1.1
selenium 3.0.2
OS X 10.10.5
$which phantomjs
/usr/local/bin/phantomjs
$phantomjs
phantomjs>(起動してる。。?)
となっております。
PhantomJSは/usr/local/bin/phantomjsにあり、。
PATH=$PATH:/usr/local/bin/phantomjsでパスが通るようにしました。 。
現在、下記のコードを実行するとエラーが出てしまいます。
なにか考えられる原因などはありますでしょうか?
かなり初歩的な質問になってしまうと思いますが、どうぞよろしく御願いいたします。
import lxml.html
from selenium import webdriver
target_url = '~~~~~~~'
driver = webdriver.PhantomJS()
driver.get(target_url)
Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/selenium/webdriver/common/service.py", line 74, in start stdout=self.log_file, stderr=self.log_file) File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/subprocess.py", line 859, in __init__ restore_signals, start_new_session) File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/subprocess.py", line 1463, in _execute_child raise child_exception_type(errno_num, err_msg) FileNotFoundError: [Errno 2] **No such file or directory: 'phantomjs'** During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/kojisugano/Documents/python/動的ページ_スクレイピング.py", line 5, in <module> driver = webdriver.PhantomJS(executable_path='/usr/local/bin/phantomjs ') File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/selenium/webdriver/phantomjs/webdriver.py", line 52, in __init__ self.service.start() File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/selenium/webdriver/common/service.py", line 81, in start os.path.basename(self.path), self.start_error_message) selenium.common.exceptions.WebDriverException: Message: 'phantomjs ' executable needs to be in PATH.
下記の質問によるとexecutable_pathを書いたり、pythonの下にphantomjsを入れています。ネット上のほとんどの方は、PATHを通してexecutable_pathを書かずに利用していますが、こちらの下記の質問のようなやり方がいいのでしょうか??
webdriver.PhantomJS(executable_path="~~~~~")
https://stackoverflow.com/questions/29869757/selenium-phantomjs-raises-error