Python Selenium报错:WebDriver.__init__()收到意外关键字参数'executable_path'
解决TypeError: WebDriver.init() got an unexpected keyword argument 'executable_path'
这个错误是因为Selenium 4.x 版本已移除executable_path参数,旧的初始化方式不再适用,以下两种方法可以解决:
方法1:使用Service类指定驱动路径
这是Selenium 4推荐的标准方式,通过对应浏览器的Service类管理驱动文件:
from selenium.webdriver import Firefox from selenium.webdriver.firefox.service import Service from selenium.webdriver.common.keys import Keys url = 'https://example' driver_path = r"D:\path\to\geckodriver.exe" # 实例化Service对象传入驱动路径 service = Service(driver_path) browser = Firefox(service=service) browser.get(url)
方法2:将驱动路径加入系统环境变量
把geckodriver.exe所在的文件夹路径添加到系统PATH环境变量中,之后无需手动指定路径,直接初始化浏览器即可:
from selenium.webdriver import Firefox from selenium.webdriver.common.keys import Keys url = 'https://example' # 驱动已在PATH中,直接创建浏览器实例 browser = Firefox() browser.get(url)
如果非要沿用旧版executable_path参数,可以降级Selenium到3.x版本,但不推荐——新版本修复了更多兼容性问题,也提供了更完善的API。
内容的提问来源于stack exchange,提问作者Leo
相关产品推荐
相关产品推荐

