Python报错:TypeError: init() got an unexpected keyword argument ‘executable_path’
一、问题
运行了很久以前的代码,报错,把各项配置都更新后还是报错
这是报错代码

from selenium.webdriver.common.by import By
print("Selenium version:", selenium.__version__)

from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
chromedriver_path=r'C:\Program Files\Google\Chrome\Application\chromedriver.exe';
browser = webdriver.Chrome(executable_path='C:\Program Files\Google\Chrome\Application\chromedriver.exe')

在这里插入图片描述

百度说的原因是Selenium、谷歌浏览器、chromedriver版本对应不上,
1、查看Selenium 版本,最新版4.13.0
在这里插入图片描述
2、查看谷歌浏览器版本,最新版本 117.0.5938.92
设置–>关于
在这里插入图片描述
3、chromedriver版本要和谷歌版本对应上,对应版本: 117.0.5938.92
在这里插入图片描述
解决
问题来了都是最新版本为什么还报错,搞了很久是因为
在 selenium 的 ‘3.141.0’ 及以上版本中,你应该使用 ‘service’ 参数而不是 ‘executable_path’ 来指定 chromedriver 的位置。
修改后的代码如下:

import selenium
from selenium import webdriver  
from selenium.webdriver.chrome.service import Service  
service = Service('/path/chromedriver')  
driver = webdriver.Chrome(service=service)

  
# 打开xxx网站  
driver.get('https://www.xxx.com')  

完成!!!

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐