You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium Edge Python测试执行后自动关闭浏览器且出现报错如何解决?

问题原因及解决方法

浏览器自动退出的核心原因

你的代码执行完所有逻辑后,Python进程自然终止,webdriver实例被资源回收,就会自动关闭关联的Edge浏览器,和你列的报错没有关联,属于Selenium的默认行为。

报错含义说明

  • DevTools listening on ws://xxx:属于正常的运行日志,不是报错,仅表示Edge的DevTools调试协议已经正常启动,绑定了本地WebSocket端口,无需处理。
  • EDGE_IDENTITY: Get Default OS Account failed:Edge浏览器尝试读取系统当前登录的微软账户信息失败,属于Edge自带的账户同步功能的报错,不影响网页自动化操作的正常执行,可以忽略。
  • fallback_task_provider.cc(119):这是Chromium内核的已知非严重性bug,和渲染进程的任务调度逻辑有关,对当前自动化场景无任何影响,无需处理。

保持浏览器运行的解决方案

方案1:添加阻塞逻辑

在代码末尾添加输入阻塞语句,让程序不直接终止:

from selenium import webdriver
from selenium.webdriver.edge.service import Service

ser = Service("C:\\Users\\Desktop\\Projects\\auto_login\\msedgedriver.exe")
driver = webdriver.Edge(service = ser)
driver.get("http://yahoo.com")
print(driver.title)
print(driver.current_url)
# 新增阻塞语句,按回车后程序才会继续执行结束
input("按回车键退出程序...")

方案2:添加detach启动参数

配置Edge启动选项,设置 detach 参数,就算Python进程结束,浏览器也不会自动关闭:

from selenium import webdriver
from selenium.webdriver.edge.service import Service
from selenium.webdriver.edge.options import Options

ser = Service("C:\\Users\\Desktop\\Projects\\auto_login\\msedgedriver.exe")
# 初始化配置项
edge_options = Options()
edge_options.add_experimental_option("detach", True)
driver = webdriver.Edge(service = ser, options=edge_options)
driver.get("http://yahoo.com")
print(driver.title)
print(driver.current_url)

内容的提问来源于stack exchange,提问作者cigstack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 17:48:07