pyautogui无法启动脚本中的程序。

请教大们的一个小问题
pyautogui环境安装完成后,编写一个自动化脚本,执行被测的GUI脚本来启动程序,脚本内容定义使用:
autogui.typewrite(‘./GUI &’, 0.0.1)
autogui.press('enter')
来启动GUI程序,遇到的问题时,在命令窗口下运行此脚本,可以正常输入./GUI &且回车
但未能启动GUI程序,进程也没有启动,只要停掉脚本时,GUI程序才被拉起来。这是什么原因?

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
可能是因为 pyautogui 在执行 autogui.typewrite()autogui.press() 函数时,无法在命令窗口中正确地执行启动GUI程序的命令。这可能是由于权限不足或路径不正确等问题导致的。

为了解决这个问题,您可以尝试使用 Python 的 subprocess 模块启动 GUI 程序。以下是一个示例代码:

import subprocess
import time
import pyautogui

# 启动 GUI 程序
subprocess.Popen(['./GUI'])

# 等待程序启动完成
time.sleep(5)

# 输入回车键
pyautogui.press('enter')

在这个示例代码中,我们使用 subprocess.Popen() 函数启动 GUI 程序,然后使用 time.sleep() 函数等待程序启动完成。最后,我们使用 pyautogui.press() 函数输入回车键。

希望这个解决方案能够帮到您!


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

  • 这篇博客: 【PyAutoGUI操作指南】01 三分钟快速实现跨平台GUI自动化模块中的 2.1 基本功能 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • import pyautogui
    import pyautogui
    
    a = pyautogui.position()
    print("鼠标的当前位置:",a)
    
    screen_width_height = pyautogui.size()
    print("屏幕的当前尺度:",screen_width_height)
    
    x = 500
    y = 700
    flag = pyautogui.onScreen(x,y)
    print("判断当前坐标是否在屏幕中:",flag)
    

    在这里插入图片描述