执行Python脚本后CMD窗口不关闭,EXIT命令不生效如何解决?
问题根因
BAT文件按顺序同步执行命令,只有前一条命令(启动Python运行Selenium脚本)的进程完全退出后,才会执行后续的EXIT命令。你遇到的情况是Python脚本没有正常退出,导致CMD一直卡在执行Python的步骤,后续的退出命令永远不会被触发。
修复步骤
1. 修正Python脚本的资源释放与退出逻辑
当前脚本仅调用了driver.close(),该方法仅关闭浏览器当前激活标签页,不会销毁Edge驱动进程,容易导致Python进程卡住:
from selenium.webdriver import Edge driver = Edge() ...执行相关操作 driver.close() # 新增:彻底关闭浏览器实例、销毁驱动进程 driver.quit() # 新增:强制Python进程正常退出,返回状态码0 exit(0)
2. 优化BAT脚本执行逻辑
可选两种修改方案,任选其一即可:
- 方案一:添加等待标识,明确等待Python进程退出后再执行退出
@echo off start /wait "" "C:\Users\...\python.exe" "C:\Users\...\seleniumskript.py" EXIT
- 方案二:脚本执行完成后直接强制关闭CMD进程,避免残留
@echo off "C:\Users\...\python.exe" "C:\Users\...\seleniumskript.py" taskkill /f /im cmd.exe >nul 2>&1
内容的提问来源于stack exchange,提问作者phoinix
相关产品推荐
相关产品推荐

