我想在我的服务器上使用 selenium 构建我的爬虫。
因此我在我的 Ubuntu17.10 服务器上安装/下载了所需的依赖项 - 例如 chromedriver、chromium-browser 等
但是,当我运行以下代码时:
driver = webdriver.Chrome()
它返回以下错误:
---------------------------------------------------------------------------
WebDriverException Traceback (most recent call last)
<ipython-input-14-2cdab8938403> in <module>()
----> 1 driver = webdriver.Chrome()
/home/zachary/.local/lib/python3.6/site-packages/selenium/webdriver/chrome/webdriver.py in __init__(self, executable_path, port, options, service_args, desired_capabilities, service_log_path, chrome_options)
66 service_args=service_args,
67 log_path=service_log_path)
---> 68 self.service.start()
69
70 try:
/home/zachary/.local/lib/python3.6/site-packages/selenium/webdriver/common/service.py in start(self)
96 count = 0
97 while True:
---> 98 self.assert_process_still_running()
99 if self.is_connectable():
100 break
/home/zachary/.local/lib/python3.6/site-packages/selenium/webdriver/common/service.py in assert_process_still_running(self)
109 raise WebDriverException(
110 'Service %s unexpectedly exited. Status code was: %s'
--> 111 % (self.path, return_code)
112 )
113
WebDriverException: Message: Service chromedriver unexpectedly exited. Status code was: 127
它很兴奋是什么意思..?
我无法理解该错误代码的初衷是什么以及从哪里开始修复它。
它看起来非常罕见的情况。
也许相关:
我已经在桌面上安装了 ubuntu 桌面 17.10,但无法启动 GUI。因此我只使用终端,但到目前为止效果很好。 我已经安装了 ssh 并从我的 mac 到服务器桌面远程控制 jupyter 笔记本,这些错误就来自它。 希望此信息与解决此错误相关,否则将中止它。
状态代码 127 表示 chromedriver 可执行文件未找到或无法执行。以下是一些可以解决此问题的方法:
1. 检查 chromedriver 是否在的 PATH 中。
-
可以使用
which chromedriver
命令检查 chromedriver 的位置。 -
如果未找到,则需要将其添加到的 PATH 中。可以通过将以下行添加到的
.bashrc
或.zshrc
文件中来实现:bash export PATH=$PATH:/path/to/chromedriver
-
将
/path/to/chromedriver
替换为 chromedriver 的实际路径。
2. 检查 chromedriver 的权限。
-
确保 chromedriver 文件具有可执行权限。可以使用以下命令设置权限:
bash chmod +x /path/to/chromedriver
3. 检查 chromedriver 版本是否与的 Chrome 浏览器版本兼容。
- 可以从 https://chromedriver.chromium.org/downloads 下载与的 Chrome 浏览器版本兼容的 chromedriver 版本。
4. 如果使用的是虚拟环境,请确保在该虚拟环境中安装了 selenium 和 chromedriver。
5. 尝试明确指定 chromedriver 的路径:
```python from selenium import webdriver
driver = webdriver.Chrome(executable_path='/path/to/chromedriver') ```
其他提示:
- 确保的服务器上已安装 Chrome 浏览器。
- 尝试重新启动服务器。
-
查看 chromedriver 日志以获取更多信息。默认情况下,日志文件位于
/tmp/chromedriver.log
。
如果仍然遇到问题,请提供以下信息:
- 的 chromedriver 版本
- 的 Chrome 浏览器版本
- 的 Ubuntu 版本
- 正在使用的 selenium 版本
这将有助于我进一步诊断问题。
标签:python,google-chrome,selenium,selenium-webdriver,selenium-chromedriver From: 49323099