python - 'phantomjs' 可执行文件可能有错误的权限
问题描述
该脚本在 Google Cloud Service 上运行良好。但我在 Amazon Web Service EC2 上遇到错误:(操作系统:linux 64bit)
selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable may have wrong permissions.
完整代码:
/usr/local/lib/python3.7/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 "/usr/local/lib/python3.7/site-packages/selenium/webdriver/common/service.py", line 76, in start
stdin=PIPE)
File "/usr/lib64/python3.7/subprocess.py", line 756, in __init__
restore_signals, start_new_session)
File "/usr/lib64/python3.7/subprocess.py", line 1499, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
PermissionError: [Errno 13] Permission denied: '/usr/local/share/phantomjs-2.1.1-linux-x86_64/bin/phantomjs'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "turkish.py", line 114, in <module>
bot = TransBot()
File "turkish.py", line 13, in __init__
self.driver = webdriver.PhantomJS(executable_path='/usr/local/share/phantomjs-2.1.1-linux-x86_64/bin/phantomjs')
File "/usr/local/lib/python3.7/site-packages/selenium/webdriver/phantomjs/webdriver.py", line 56, in __init__
self.service.start()
File "/usr/local/lib/python3.7/site-packages/selenium/webdriver/common/service.py", line 88, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable may have wrong permissions.
我尝试移动 '/usr/local/bin' 和 '/usr/local/share' phantomjs 文件。同样的错误。你有什么建议?对不起我的英语。
解决方案
更改权限,使其可执行。
$ chmod a+x phantomsjs
推荐阅读
- angular - 如何使用 Angular 6 调试 dotnet core spa
- python - 导入一个python模块并实现它
- c++ - 背包问题,视觉工作室问题
- angular - 如何使用搜索操作在 Angular 中显示错误消息
- class - 如何将数据从一个类传递到另一个类,同时在 Flutter 中使其可变?
- angular - 订阅 ngrx 商店多次触发
- python - 如何将 int32 类型的 4D numpy 数组转换为 tfrecords?
- angular - Angular ui路由使用参数导航
- cocoa - NSStatusItem.popUpMenu 有什么替代品?
- java - 会话 Bean 的默认类型是什么?