赞
踩
解决selenium打开Chrome浏览器自动退出问题
最近电脑换了新系统,在运行Selenium的时候遇到一个问题,当我执行完程序,浏览器自动关闭了,我在程序中也没有写driver.quit()方法。代码如下:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://wwww.baidu.com")
代码运行后,webdriver驱动chrome浏览器打开网页后,便自动退出了。但是系统升级前,运行代码并不会自动退出,除非手动写了退出方法。
网上很多资料写的是设置全局变量,即把打开浏览器的操作放在函数外部,函数执行完毕,浏览器就不会关闭,单这种方法并不管用。例如:
from selenium import webdriver # 打开浏览器驱动 driver = webdriver.Chrome(r'd:\chromedriver.exe') driver.implicitly_wait(10) class ServiceConfig(): # 定义prepareWork函数,做准备工作 def prepareWork(self,url): driver.get(url) if __name__ == '__main__': url = 'https://www.baidu.com' sc = ServiceConfig() sc.prepareWork(url)
3.最终解决方案
经过排查发现,之前电脑的selenium版本是4.1.1,运行不会自动退出;升级到selenium最新版本4.7.2后,会出现这个问题。
于是将selenium版本回退到4.1.1,成功解决。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。