2
私は、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")
私は、単語の文書を開き、キーストロークを送信してPDFとして保存するプログラムを作成しています。私はそれから画像をエクスポートする別のPDFエディタを開きます。
ですが、アプリケーションの起動が終了するまでスクリプトは一時停止します。それにキーストロークを送るにはどうすればいいですか? –