はじめに
前回に引き続き,自作RPAツールとして利用できる「PyAutoGUI」について紹介していきます.
「マウス操作」「キーボード操作」のコマンドはこちら
→ 作業自動化に使えるPyAutoGUI紹介①
「メッセージボックス機能」「スクリーンショット機能」「Locate機能」のコマンドはこちら
→ 作業自動化に使えるPyAutoGUI紹介②
PyAutoGUIとは
Pythonスクリプトでマウスとキーボードを制御して,「マウス操作の自動化」や「キーボード入力の自動化」を実現します.
動作環境
- Python 3.12.0
- PyAutoGUI 0.9.54
PyAutoGUIはpipを使用してインストールできます.
pip install pyautogui
コマンド紹介
- position()
マウスカーソルの現在のxy座標を返す.
import ppyautogui as pag
pag.position()
- size()
現在の画面解像度を返す.
import ppyautogui as pag
pag.size()
- onScreen(x, y)
(x, y)が画面内にあればTrue,無ければFalseを返す.
import ppyautogui as pag
pag.onScreen(x, y)
- フェイルセーフ
PyAutoGUIが呼び出されるたびに2.5秒の一時停止を設定します.
import pyautogui as pag
pag.PAUSE = 2.5
フェイルセーフモードがTrueの場合,マウスを左上に動かすとpyautogui.FailSafeExceptionが発生し,プログラムを中断させることができます.
import pyautogui as pag
pag.FAILSAFE = True
座標の位置を調べるためにマウスカーソルの位置を都度実行して調べることは大変だと思います.以下のPython3スクリプトは常にマウスカーソルの位置を出力します.
import pyautogui, sys
print('Press Ctrl-C to quit.')
try:
while True:
x, y = pyautogui.position()
positionStr = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
print(positionStr, end='')
print('\b' * len(positionStr), end='', flush=True)
except KeyboardInterrupt:
print('\n')
Press Ctrl-C to quit.
X: 1384 Y: 204
マウスカーソルを動かすと,上記のX,Y座標の数値がリアルタイムで変化します.
終了する場合は「Ctrl + C」を押してください.