pycharm打开chrome自动退出错误的解决方法

 更新时间:2023年07月21日 16:13:37   作者:古代宇航员  
这篇文章主要给大家介绍了关于pycharm打开chrome自动退出错误的解决方法,文中通过实例代码以及图文将解决的办法介绍的非常详细,需要的朋友可以参考下

问题描述:

用pycharm运行代码打开chrome浏览器后,浏览器自动退出。代码如下:

from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')

运行环境:

pycharm版本:2022.3

python版本:3.9.10

分析:

并没有设置quit(),代码执行也没有报错,在网上搜索一番后可能的解释和解决方法如下:

1、代码执行结束后线程随主程序一起结束,内存被回收,浏览器自动关闭。(解释这问题属于正常现象,想要保留浏览器可以设置sleep())

2、因为把driver = webdriver.Chrome()放在了函数内部,函数执行完毕后,程序内所有的步骤都结束了,这段程序的进程也就结束了,浏览器包含在内,所以才会自动退出,解决方法就是设置全局变量,即把打开浏览器的操作放在函数外部,函数执行完毕,浏览器也不会关闭。(我的代码没有函数,所以也不是这个问题)

3、webdriver要与浏览器的版本号匹配,不然浏览器就会闪退。(这个现象是浏览器闪退,并且代码执行会有报错,而且我的版本号也是匹配的,显然不是这个问题)

附上查看版本号代码如下:

from selenium import webdriver
driver = webdriver.Chrome()
 
str1 = driver.capabilities['browserVersion']    #查看chrome版本
str2 = driver.capabilities['chrome']['chromedriverVersion'].split(' ')[0]   #查看python下的chromedriver版本
print(str1)
print(str2)

运行结果:

(只要大版本号一致就行)

顺便再附上chromedriver下载地址:

http://chromedriver.storage.googleapis.com/index.html

chromedriver.exe文件存放位置(以下路径只是参考,根据实际环境来):

1)、python安装目录:C:\Users\username\AppData\Local\Programs\Python\Python39

2)、chrome安装目录:C:\Program Files\Google\Chrome\Application(可以不放)

2023.4.7编辑更新:经测试,安装了selenium版本4.8.3的情况下,即使chromedriver.exe文件不放在python安装目录下,运行代码也不会报错,会自动在C:\Users\用户名\.cache\selenium\chromedriver\win32\目录下自动生成chromedriver.exe文件。这是老版本selenium没有的功能,大大方便了运行维护,不用手动更换文件了,现在会自动生成了。

解决方法:

网上找了一圈后大致就是以上这3个观点,但是看其他人运行相同的代码,别人的chrome就不会自动退出,经过排查,最终确定,问题的原因竟是selenium的版本太高导致,我的selenium的版本是4.7.2,不会自动退出的版本是4.4.3。

卸载4.7.2,重新安装4.4.3,问题解决。

备注1:截止到发这篇文章时,selenium最高版本是4.7.2。

备注2:我挑了4.4.3发现解决了问题,所以也就没有再试其他的版本,也许其他的低版本也可以解决问题。

杂谈:

也许这个chrome自动退出的问题其实并不是个问题,代码成功运行结束,浏览器关闭,可能在selenium4.7.2版本上就是这样运行的,而低版本的selenium在代码运行完成之后就不会自动关闭浏览器,目前来说我比较喜欢后者,所以选择了安装4.4.3。

总结

到此这篇关于pycharm打开chrome自动退出错误的解决方法的文章就介绍到这了,更多相关pycharm打开chrome自动退出内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • dify 安装python第三方库教程

    dify 安装python第三方库教程

    本文介绍了在Dify平台安装Python第三方库的完整流程,包括核心原理和操作步骤,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2026-02-02
  • 使用Python进行图像裁剪的多种方法及代码示例

    使用Python进行图像裁剪的多种方法及代码示例

    这篇文章主要介绍了使用Python进行图像裁剪的多种方法,包括使用PIL库和OpenCV库,还提供了高级技巧和示例代码,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-01-01
  • Python数据库格式化输出文档的思路与方法

    Python数据库格式化输出文档的思路与方法

    这篇文章主要给大家介绍了关于Python数据库格式化输出文档的思路与方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Python 26进制计算实现方法

    Python 26进制计算实现方法

    这篇文章主要介绍了Python 26进制计算实现方法,涉及Python字符串与数值计算的相关操作技巧,需要的朋友可以参考下
    2015-05-05
  • Python使用PyPDF2实现快速提取PDF文本

    Python使用PyPDF2实现快速提取PDF文本

    在日常办公和数据处理中,PDF文件几乎无处不在,本文将带你从零开始,用PyPDF2快速提取PDF文本,涵盖安装配置、核心操作、元数据获取、中文乱码避坑等全流程,希望对大家有所帮助
    2026-04-04
  • python实现simhash算法实例

    python实现simhash算法实例

    这篇文章主要介绍了python实现simhash算法实例,需要的朋友可以参考下
    2014-04-04
  • Python实现下载监控工具类:自动检测并移动下载文件

    Python实现下载监控工具类:自动检测并移动下载文件

    在日常开发和自动化任务中,经常需要处理文件下载的场景,本文介绍一个实用的Python下载监控工具类,能够自动检测新下载的文件并将其移动到指定位置,感兴趣的小伙伴可以了解一下
    2025-06-06
  • Django中提示消息messages的设置方式

    Django中提示消息messages的设置方式

    今天小编就为大家分享一篇Django中提示消息messages的设置方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • python学习--使用QQ邮箱发送邮件代码实例

    python学习--使用QQ邮箱发送邮件代码实例

    这篇文章主要介绍了python使用QQ邮箱发送邮件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 基于Python实现一个Word表格合并单元格工具

    基于Python实现一个Word表格合并单元格工具

    这篇文章主要介绍了如何基于Python实现一个Word表格合并单元格工具,用于处理Word文档中的表格,主要功能是合并指定列中内容相同的单元格,并支持多种格式设置选项,需要的朋友可以参考下
    2025-11-11

最新评论