星云点击:星空遥控器
120.47M · 2026-02-04
在 Windows 系统中运行 Python 自动化脚本(如 Playwright、PyAutoGUI)时,出现以下异常情况: * 触发动作:鼠标在命令行窗口(CMD/PowerShell)内部点击了左键或右键。 * 表现状态:程序立即停止运行,日志不再刷新,仿佛“卡死”。 * 视觉特征:窗口标题栏的前缀变成了 “选择” 或 “Select”。
这并非 Python 代码或第三方库的 Bug,而是 Windows 控制台的一项系统特性——“快速编辑模式”(QuickEdit Mode)。 * 机制:当用户在窗口内点击鼠标时,系统认为用户准备复制屏幕上的文字。 * 后果:为了保护选中的文本不被新输出的日志打断,Windows 会挂起(Suspend) 当前进程的 I/O 输出,导致程序暂停执行,直到用户完成操作。
A. 现场急救(临时恢复)
如果程序已经卡住,无需重启:
* 操作:在控制台窗口内按一下 Enter(回车键) 或 Esc。
* 效果:系统判定复制完成或取消,进程会立即“解冻”,继续执行后续代码。
B. 永久关闭(推荐设置) 为了防止无人值守运行时因误触导致脚本中断,建议关闭此功能: 1. 右键点击控制台窗口顶部的标题栏。 2. 选择 【属性】 (Properties)。 3. 切换到 【选项】 (Options) 标签页。 4. 在“编辑选项”栏目中,取消勾选【快速编辑模式】 (QuickEdit Mode)。 5. 点击确定保存。
如果上述方法无效,且程序直接报错退出(而非静止卡住),请检查 PyAutoGUI 的安全机制:
* Fail-Safe 触发:当鼠标迅速移动到屏幕角落(通常是左上角)时,PyAutoGUI 会强制抛出 pyautogui.FailSafeException 以防止失控。
* 区分方法:
* 卡住不动 = Windows 快速编辑模式(本文问题)。
* 报错 Traceback = PyAutoGUI 安全机制触发。