python selenium模塊使用出錯-selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executab

 

Python 2.7+selenium+Firefox 55.0.3git

代碼:github

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time

browser = webdriver.Firefox() # Get local session of firefox
browser.get("http://www.yahoo.com") # Load page
assert "Yahoo!" in browser.title
elem = browser.find_element_by_name("p") # Find the query box
elem.send_keys("seleniumhq" + Keys.RETURN)
time.sleep(0.2) # Let the page load, will be added to the API
try:
    browser.find_element_by_xpath("//a[contains(@href,'http://seleniumhq.org')]")
except NoSuchElementException:
    assert 0, "can't find seleniumhq"
browser.close()

錯誤信息以下:web

selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.windows

回答摘自知乎:https://www.zhihu.com/question/49568096session

1. selenium 3.x開始,webdriver/firefox/webdriver.py的__init__中,executable_path="geckodriver";而2.x是executable_path="wires"
2. firefox 47以上版本,須要下載第三方driver,即geckodriver;在 的Third Party Drivers, Bindings, and Plugins下面找到 Mozilla GeckoDriver,下載到任意電腦任意目錄(Mac 下放到了/usr/bin/ 和/sbin/, /bin/,/usr/local/bin/),解壓後將該路徑加入到PC的path(針對windows)便可。
做者:iceblue iceblue 連接:https://www.zhihu.com/question/49568096/answer/119324584 來源:知乎 著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。
相關文章
相關標籤/搜索