(python3.6)pyAutoGuiでアプリを操作するプログラムを作ってみた
こんにちは、今回はpyautoguiを使って外部のアプリケーションを自動操作する方法を紹介します。
今回扱うのは2つのモジュールです。
- pyAutoGui
- キーボードのエミュレートに使用
- pyperclip
- クリップボード利用に使用
メモ帳を起動して文字列を入力します。( コンソールのタイトルにローカルフォルダが表示されているのでモザイク処理しています)
pyAutoGuiはキーボードだけではなくマウス操作やスクリーンの状態を加味した操作もできるのでもっと実用的なこともできそうです。
それでは今回のソースコードです。
50行足らず、相変わらずpythonの短さには脱帽します。
import pyautogui,pyperclip import subprocess from time import sleep # !エントリポイント def Main(): Initialize() while 1: if(MainOperation()): break # 操作間隔 WAIT_SEC = 0.1 def Initialize(): pyautogui.FAILSAFE = True pyautogui.PAUSE = WAIT_SEC # !pyAutoGuiに合わせて関数に待ち時間を設ける def Pause(function): sleep(WAIT_SEC) def MainOperation(): # メモ帳の起動 Pause(subprocess.Popen("notepad")) # キーボード入力 key = "Hellow World" for c in key: pyautogui.typewrite(c) # 改行 pyautogui.typewrite('\n') # 日本語入力はクリップボード経由で行える key = "こんにちは 世界" pyperclip.copy(key) pyautogui.hotkey('ctrl','v') return 1 if __name__ == '__main__': Main()