2017-07-05 48 views
1

因此,我使用OS X El CapitanEclipse (Neo) and Python。我用Selenium脚本编写了一些Python。消息:'chromedriver'可执行文件需要位于PATH

这些脚本工作正常。

然后我从OSX Sierra升级到El Capitan

注:这是他们唯一重大变化 ,我做我的设置。

当我试图运行相同的脚本,现在,我得到的

消息: chromedriver可执行文件需要在PATH

据我可以告诉chromedriver IS在我的路径上。大家都知道,现在,我只能让我的脚本工作,如果我的Chrome浏览器驱动程序的路径是hard copy,这并不是最优雅的做事方式。

有其他人有/有这个问题吗?关于我的Eclipse + Python的任何配置的想法。

My Eclipse and Python project screen shot

my PYTHONPATH screen shot

回答

0

我不知道蟒蛇。但是,不管语言如何,webdriver的实现都应该是相同的。这里你已经调用了chrome webdriver,但是你有没有为你的代码定义chromedriver.exe的路径?例如,在java它看起来像这样

System.setProperty("webdriver.chrome.driver", "C:\\selenium-java-3.4.0/chromedriver.exe"); 
driver = new ChromeDriver(); 

你得到的错误是指chromedriver.exe而不是python环境。

Python的解决方案,从谷歌文档:

import time 
from selenium import webdriver 

driver = webdriver.Chrome('/path/to/chromedriver') # Optional argument, if not specified will search path. 
driver.get('http://www.google.com/xhtml'); 
time.sleep(5) # Let the user actually see something! 
search_box = driver.find_element_by_name('q') 
search_box.send_keys('ChromeDriver') 
search_box.submit() 
time.sleep(5) # Let the user actually see something! 
driver.quit() 
0

首先确认您的驱动器的路径,如果你打开chromedriver命令提示符和类型,然后按Enter。如果您收到消息“正在启动ChromeDriver 2.15.322448 ..”,您的路径已正确设置。
在Python中,备用解决方案是你可以使用
driver = webdriver.Chrome("path_to_driver/chromedriver.exe")
希望这应该工作!

+0

谢谢Dhruv !!!我认为我已经看到了这些检查和解决方案。 事实上,我的操作系统/系统路径设置正确,因为在终端中,当我输入“chromedriver”时,它像你说的那样启动。 而且就像我在我的原始问题中提到的那样,对路径做一个“硬拷贝”,就像你所建议的那样,也是可行的。 但这仍然留下我的问题,为什么我似乎无法配置Eclipse来查看我的PATH,虽然我已经设置了PYTHONPATH,如上面的屏幕截图所示,“包括我的chromedriver的安装目录” –

+0

我不知道有关mac os目录,但在Windows中它的作用就像添加**'chromedriver。在'C:\ Python27 \ Scripts'中运行'exe'**(请参阅您的案例并进行相应更改),然后您无需提供驱动程序路径,只需使用'driver = webdriver.Chrome()' –

相关问题