生成等待直到应用程序打开

时间:2016-03-26 20:40:00

标签: python subprocess pyautogui

我正在使用子进程使用它的默认程序打开一个文件,并使用pyautogui库向它发送击键。

我的问题是,当你打开一个文件时,需要花时间打开它的默认程序,当然这个时间段因不同的文件而异。

那么,如何在我的脚本中生成暂停,以便首先打开文件并将键击发送给它。

注意:sleep()函数不是我的行为。我需要一种在启动的应用程序和我的脚本之间的异步。

from subprocess import Popen
from sys import argv
from pyautogui import press,hotkey

if len(argv)>0:

    word = Popen(['start',argv[1]],shell=True)
    press("f12")
    press("tab")
    press("right")
    for i in range(5): press("down")
    press("enter")
    hotkey("alt","f4")
    word = None

    pdf = Popen(["C:\Program Files\Nitro\Pro 9\NitroPDF.exe",argv[1]])
    hotkey("ctrl","shift","i")
    press("enter")
    hotkey("alt","f4")

我正在创建一个程序来打开word文档并向其发送击键,以便将其保存为pdf。我正在打开另一个pdf编辑器从中导出图像。

1 个答案:

答案 0 :(得分:0)

您可以将Popen.wait()用于此目的。它将等待子进程终止。