解决Selenium自动关闭浏览器问题

这篇具有很好参考价值的文章主要介绍了解决Selenium自动关闭浏览器问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在没有使用close或者quit的情况下,Selenium自动关闭浏览器就是因为Selenium运行结束了。分两种情况:

1.程序运行完了,所以带着浏览器关闭了。

在命令行运行时,或在打包好的程序里运行时会有这种情况;在使用Pycharm之类IDE运行代码的时候通常不会造成浏览器关闭,但也有可能在某些IDE里面出现。网上有建议使用“option.add_experimental_option("detach", True)”。但是经测试发现这句效果不佳(其实在我这里基本没有起作用)。当然对于这种情况我们可以sleep,但是更建议把浏览器动作放在一个函数里,从而和打开浏览器这个动作分离:

s = Service(r"C:\xxxxxxx\chromedriver.exe")
WD = webdriver.Chrome(service = s)

def web_actions():
    WD.maximize_window()
    WD.get("https://xxxxxxx")
    .....

web_actions()

2. 程序中断退出,所以带着浏览器关闭了。

程序运行出错,或者用户中断了运行,造成程序中断,带着浏览器一起关闭。这种情况在使用IDE运行代码的时候一般不会造成浏览器关闭。但是在命令行运行时,或在打包好的程序里会造成浏览器关闭。这种情况因为浏览器动作已经被放进函数,所以只需要做个错误处理即可,比如:文章来源地址https://www.toymoban.com/news/detail-502139.html

try:
    web_actions()
except:
    time.sleep(1)

3.总结:

s = Service(r"C:\xxxxxxx\chromedriver.exe")
WD = webdriver.Chrome(service = s)

def web_actions():
    WD.maximize_window()
    WD.get("https://xxxxxxx")
    .....

try:
    web_actions()
except:
    time.sleep(1)

#这里用来保证命令行运行的情况下,Python主程序不结束,否则会带着Selenium彻底退出,一样会关闭浏览器
input('Selenium running done.')

到了这里,关于解决Selenium自动关闭浏览器问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python+Selenium程序执行完,chrome浏览器自动关闭解决方案

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

    2024年02月16日
    浏览(46)
  • Python运行selenium程序执行结束后自动关闭浏览器 解决方法 亲测有效

    最近朋友在学Selenium的时候遇到一个问题,当执行完selenium程序后,浏览器会闪退也就是自动关闭,程序中也没有写driver.quit()或driver.close()方法,解决后发布上来以供学习交流。 内容比较简单,这里直接附上代码: (1)修改前 (2)修改后:

    2024年02月11日
    浏览(48)
  • 让selenium不自动关闭浏览器

    话不多说直接上代码 运行代码 完成!!! selenium的基本使用: 点击这里

    2024年02月11日
    浏览(38)
  • 解决selenium打开Chrome浏览器自动退出的问题

    好不容易安装好selenium和对应的浏览器驱动器后终于可以运行程序了,结果发现一运行程序后浏览器打开就自动退出了,但是我在Python代码中并没有写driver.quit()方法,上网查了查发现原来是我的selenium版本是4.8.2的,selenium升级到版本4.7.2后,会出现这个浏览器自动退出的问题

    2024年02月11日
    浏览(47)
  • 不让selenium自动关闭浏览器页面(闪崩)[vscode +edge]

    前言: 看见网上这个的解决方法不是关于chrome就是关于pycharm。 像我这种平时喜欢用vscode和edge来写爬虫的遇到问题,真的是难绷😅😅😅 用的是 vscode和selenium配合edge来实现: 所需软件版本: python: 3.10.8. vscode 版本: 1.81.1 (user setup) selenium 版本: 4.5 edge 版本:版本 116.0.193

    2024年02月07日
    浏览(51)
  • python用selenium打开浏览器后秒关闭浏览器-解决方法

    学习selenium的时候,上手第一个脚本发现成功打开浏览器后,代码执行完毕浏览器又秒关闭了,代码如下: 1、检查代码,代码中没有写driver.quit()或driver.close()方法,也没有其它错误提示; 2、检查版本号,浏览器版本号,驱动版本号,确认版本号没有问题; 3、最后找到解决

    2024年02月11日
    浏览(56)
  • python运行selenium创建Edge浏览器更改默认下载路径的方法与防止程序结束后浏览器窗口自动关闭的方法

    结合chatgpt与csdn查阅资料后 得到解决方法: 其中 “D:Downloads_test”改为你自己想要默认下载路径, \\\"download.prompt_for_download\\\"为下载文件开始时Edge浏览器是否弹出另存为窗口,True则触发下载时会弹出另存为窗口,False则直接将文件下载到默认下载路径中。 另存为窗口长相如下

    2024年02月11日
    浏览(33)
  • selenium+python自动化测试 —— 解决无法启动IE浏览器及报错问题!

    前言:记录启动IE浏览器的报错及解决方法。 错误1: selenium.common.exceptions.WebDriverException: Message: \\\'IEDriverServer.exe\\\' executable needs to be in PATH. Please download from http://selenium-release.storage.googleapis.com/index.html and read up at https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver Exception ignored i

    2024年02月03日
    浏览(36)
  • Selenium自动化chrome驱动版本匹配但是调用浏览器失败:Only local connections are allowed. 问题解决

    第一次发现这种情况,驱动版本完全对的上,但是调用 chrome 就提示 Only local connections are allowed. 然后浏览器调用失败报错。 解决方法: 调用 chrome 驱动的时候加个参数 --whitelisted-ips=\\\"\\\" ,值为空就是把所有调入来源都加入白名单。 ips 的全称是 intrusion prevention system ,解释为入

    2024年02月11日
    浏览(30)
  • 解决selenium打开浏览器自动退出

    解决selenium打开Chrome浏览器自动退出问题 问题 最近电脑换了新系统,在运行Selenium的时候遇到一个问题,当我执行完程序,浏览器自动关闭了,我在程序中也没有写driver.quit()方法。代码如下: 代码运行后,webdriver驱动chrome浏览器打开网页后,便自动退出了。但是系统升级前

    2024年02月11日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包