赞
踩
在使用之前的代码通过selenium操作Chrome时,报错:DeprecationWarning: executable_path has been deprecated, please pass in a Service object driver = webdriver.Chrome(xxx)
DeprecationWarning: executable_path has been deprecated, please pass in a Service object driver = webdriver.Chrome(xxx)
截图如下:
主要报错信息内容翻译如下所示::
DeprecationWarning: executable_path has been deprecated, please pass in a Service object driver = webdriver.Chrome(xxx)
翻译:
弃用警告:executable_path已弃用,请传入服务对象 driver = webdriver.Chrome(xxx)
经过查阅资料,发现出现 DeprecationWarning 警告的类型错误,大多属于版本更新时,所使用的方法过时的原因;某方法在当前版本被重构,依旧可以传入参数,但是在之后的某个版本会被删除。
本例中,这个报错是由于Selenium更新到新版本(4.x版本)后,以前一些代码的语法发生了改变,当然如果没有更新过或是下载最新版本的Selenium是不受到影响的,还可以使用以前的写法。
小伙伴们按下面的解决方法即可解决!!!
由于新旧版本的语法发生了改变,有两种解决方法。
方法一:使用或恢复(4.x版本)之前的版本
也就是使用或恢复Selenium版本到(4.x版本)之前的版本
方法二:修改代码的语法为新版本的语法
旧版本语法代码
# 导入selenium
from selenium import webdriver
executable_path=r'chromedriver.exe'
# 选择谷歌浏览器
driver = webdriver.Chrome(executable_path)
# 输入网址
driver.get("https://www.baidu.com/")
# 打印网页title
print(driver.title)
# 关闭网址
driver.quit()
新版本语法代码
# 导入selenium
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 选择谷歌浏览器
service = Service(executable_path=r'chromedriver.exe')
driver = webdriver.Chrome(service=service)
# 输入网址
driver.get("https://www.baidu.com/")
# 打印网页title
print(driver.title)
# 关闭网址
driver.quit()
运行截图如下
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。