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

如何用Python打开应用并截图?pyautogui截图异常求助

问题原因

subprocess.call() 是阻塞式调用,它会等待你打开的 pandora.exe 进程完全退出后,才会继续执行后续的 time.sleep(5) 和 pyautogui.screenshot() 代码,这就是必须关闭应用才会触发截图的核心原因。

解决方案

将 subprocess.call() 替换为 subprocess.Popen(),它属于非阻塞式调用,启动应用后会立刻返回并继续执行后续代码:

import pyautogui
import subprocess
import time

# 非阻塞启动目标应用
subprocess.Popen("pandora.exe")
# 等待应用完成加载
time.sleep(5)
# 执行截图操作
pyautogui.screenshot("ss.png")
额外提示
  • 如果应用加载时长不稳定,可以适当延长 time.sleep() 的参数值,或者用 pyautogui.locateOnScreen() 检测应用的特征元素,实现更精准的加载完成判断,避免固定等待时长的局限性。
  • 若系统找不到 pandora.exe,请传入程序的完整路径,例如:r"C:\Program Files\Pandora\pandora.exe"。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 04:27:36