使用 detach 阻止 Edge Browser 在 Selenium 程序结束时关闭

Using detach to stop Edge Browser from being closed when Selenium program ends

我通过 python 使用 selenium 来自动执行任务 - 打开网页,输入一些文本,单击按钮。

现在,完成此操作后,我希望浏览器和所有 python 文件、edgedriver.exe cmd window 和任何其他进程保持打开状态 运行 通过 python 脚本关闭。我希望浏览器像我们手动加载的普通浏览器一样加载。

我的查询:

  1. 当我关闭 python 程序以及 edgebrowser.exe 时,我们可以阻止浏览器关闭吗?我已将此添加到我的代码中,但这不会阻止浏览器在所有其他 windows 关闭后关闭。

代码:

from selenium.webdriver.edge.options import Options
edge_options = Options()
edge_options.add_experimental_option("detach", True)

使用分离选项,我可以让浏览器 运行 python 保持关闭状态。但我也不希望屏幕上显示 edgebrowser.exe 命令 window。我们能做到吗?

  1. 我们能否删除地址行下方的“您的浏览器正由自动化测试软件控制”这一行。我希望浏览器 window 看起来像我们使用 app/program 快捷方式打开它时的样子。

可以参考this link隐藏命令window。该代码仅适用于 selenium 4.0.0 或更高版本。

要删除“您的浏览器正在被自动化测试软件控制”这一行,您可以尝试添加以下代码行:

edge_options.add_argument("--remote-debugging-port=9222") 
edge_options.add_experimental_option('useAutomationExtension', False) 
edge_options.add_experimental_option("excludeSwitches", ["enable-automation"])