2017-09-01 112 views
0

我对此比较陌生,目前我正在使用python 2.7和selenium。当运行以下内容:Geckodriver not found

from selenium import webdriver 
browser = webdriver.Firefox() 

我得到一个错误,说'geckodriver'可执行文件必须在PATH中。然后我把它放在/ usr/local/bin中,但它仍然不起作用。我也试过browser = webdriver.Firefox(executable_path=r'your\path\geckodriver'),但它仍然没有工作。另外,在终端中使用chmod +x geckodriver之后,它会给我一个错误。什么解决方案将解决这个问题?

+1

如果您正在使用chmod然后我认为你使用的是linux,而在linux中,路由是由分隔符给出的:'/',例如我的情况:'/ usr/bin/geckodriver' – eyllanesc

+0

你可以把壁虎驱动程序放到你的工作空间位置,然后在s如果你不需要在代码中指定位置。 – rhea

回答

0

从您的问题中,您不清楚触发脚本的操作系统。在您使用Selenium 3.5.x时,您可以下载geckodriver二进制文件并将其放置在系统中的任何位置,并通过在初始化webdriver实例时提供geckodriver二进制文件的绝对路径来引用它。在我Windows 8 Pro系统,这是工作代码:

from selenium import webdriver 

driver=webdriver.Firefox(executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe') 
driver.get("http://www.google.com") 
print("Page Title is : %s" %driver.title) 
driver.quit() 

控制台输出:

Page Title is : Google 

也许在Linux系统中,我们需要做的:

from selenium import webdriver 

driver=webdriver.Firefox(executable_path=r'/absolute_path/geckodriver') 
driver.get("http://www.google.com") 
print("Page Title is : %s" %driver.title) 
driver.quit()