けんろう
PyAutoGUIは、マウスやキーボード操作、スクリーンショット撮影などを自動化できるPythonのライブラリです。
この記事では、Pythonライブラリである、PyAutoGUIの関数を一覧でまとめました。
PyAutoGUIでプログラムを作成するときの参考にしてください。
【無料オンライン】ゼロから始めるPythonプログラミング入門講座(週5開催) テックジムPyAutoGUIとは
PyAutoGUIは、マウスやキーボード操作を制御するためのPythonのモジュールです。
PyAutoGUIは、以下のことから,非常におすすめなツールです。
・無料で使えること
・Pythonで書けること
・画像認識機能が使える
公式サイト
公式ドキュメントは、以下です。
インストール方法
pip install pyautogui
マウス制御関数
内容 | 関数 | サンプル例 | 備考 |
画面の解像度の取得 | size() | > pyautogui.size() (1920, 1080) | |
マウスカーソルの 現在座標 (X,Y) | position() | > pyautogui.position() (187, 567) | |
XY座標が画面上にあるか どうかを確認 | onScreen(x,y) | > pyautogui.onScreen(0, 0) True | |
マウスカーソルの 位置を移動する (座標指定) | moveTo(x,y,time) | > pyautogui.moveTo(100, 200, 2) # (100,200)の位置へ、 2秒かけて移動する | time: ・秒単位で指定する。 ・デフォルトは0.1秒 |
マウスカーソルの 位置を移動する (ピクセル指定) | move(x,y) | > pyautogui.move(0, 50) # Y軸方向に+50ピクセル分移動する > pyautogui.move(-30, 0) # X軸方向に-30ピクセル分移動する | |
ドラッグ (座標指定) | dragTo( x,y, time, button=” ) | > pyautogui.dragTo(300, 400, 2, button=’left’) # マウスの左ボタンを押したまま、 マウスを(300、400)に 2秒間ドラッグします。 | button ・left:左ボタン ・right:右ボタン |
ドラッグ (ピクセル指定) | drag( x,y, time, button=” ) | > pyautogui.drag(30, 0, 2, button=’right’) # マウスの右ボタンを押したまま、 マウスを2秒間かけて 左に30ピクセルドラッグします。 | button ・left:左ボタン ・right:右ボタン |
クリック | click( x=100, y=200, button=’right’, clicks=2, interval=0.25 ) | > pyautogui.click(x=100, y=200) # (100,200)に移動し、 マウスの左ボタンをクリックします。 > pyautogui.click(button=’right’) # マウスを右クリック > pyautogui.click(clicks=2, interval=0.25) # マウスの左ボタンをダブルクリックしますが、 クリックの間に1/4秒の一時停止があります | clicks ・クリック数 |
ダブルクリック | doubleClick( x=100, y=200, button=’right’, interval=0.25 ) | > pyautogui.doubleClick() # 左ボタンのダブルクリックを実行します | |
トリプルクリック | tripleClick() | ||
右クリック | rightClick() | ||
スクロール | scroll() | > pyautogui.scroll(10) # 上に10回スクロール「クリック」 > pyautogui.scroll(-10) # 下に10回スクロール「クリック」 > pyautogui.scroll(10, x=100, y=100) # マウスカーソルを(100,200)に移動してから、 上に10回スクロールします。 |
キーボード制御関数
内容 | 関数 | サンプル例 | 備考 |
文字を入力する | write(“文字列”) | > pyautogui.write(‘Hello world!’) # 「Helloworld!」を出力します > pyautogui.write( ‘Hello world!’, interval=0.25 ) # 「Helloworld!」を出力します 各文字の後に1/4秒の遅延があります | |
キーボードのキーを 押す | press( ‘KEYBOARD_KEYS’ ) | > pyautogui.press(‘enter’) # 「Enter」キーを押す > pyautogui.press(‘f1’) # 「F1」キーを押す > pyautogui.press(‘left’) # 「左方向」キーを押す > pyautogui.press([‘left’, ‘left’, ‘left’]) # 「左方向」キーを3回押す > pyautogui.press(‘left’, presses=3) # 「左方向」キーを3回押す | 指示できるキーボードキーは、 KEYBOARD_KEYSを参照のこと |
キーボードのキーを 押したままとする | keyDown( ‘KEYBOARD_KEYS’ ) | > pyautogui.keyDown(‘shift’) # 「シフト」キーを押したままとする > pyautogui.press(‘left’) # 「左方向」キーを押す > pyautogui.keyUp(‘shift’) # 「シフト」キーを離す | 指示できるキーボードキーは、 KEYBOARD_KEYSを参照のこと |
キーボードのキーを 離す | keyUp( ‘KEYBOARD_KEYS’ ) | 指示できるキーボードキーは、 KEYBOARD_KEYSを参照のこと | |
キーボードショートカット | hotkey() | > pyautogui.hotkey(‘ctrl’, ‘shift’, ‘esc’) # タスクマネージャを起動 |
スクリーンショット制御関数
内容 | 関数 | サンプル例 | 備考 |
スクリーンショットを撮る | screenshot( ‘保存するファイル名’, region=(左上座標, 幅, 高さ) ) | > im = pyautogui.screenshot(‘my_screenshot.png’) # スクリーンショットを撮り、 my_screenshot.pngという名前で保存する > im = pyautogui.screenshot(‘my_screenshot.png’, region=(0,0, 300, 400)) #(0,0)を左上として幅=300、高さ=400 の領域のスクリーンショットを撮り、 my_screenshot.pngという名前で保存する | |
画面座標を取得する (左上座標) | locateOnScreen( ‘検索する画像ファイル名’ ) | > testlocation = pyautogui.locateOnScreen(‘test1.png’) > testlocation Box(left=1416, top=562, width=50, height=41) | |
画面座標を取得する (中心座標) | center( ‘検索する画像ファイル名’ ) | > testlocation = pyautogui.locateOnScreen(‘test1.png’) > testpoint = pyautogui.center(testlocation) > testpoint Point(x=1441, y=582) |
メッセージボックス関連機能
内容 | |||
メッセージボックスを表示 テキストと[OK]ボタン | alert( text=’テキスト’, title=’タイトル’, button=’OK’ ) | > pyautogui.alert(text=’これはアラートです。’, title=’アラート’, button=’OK’) | |
メッセージボックスを表示 [OK]ボタンと[キャンセル]ボタン | confirm( text=”テキスト, title=’タイトル’, buttons=[‘OK’, ‘Cancel’] ) | > pyautogui.confirm(text=’これは確認です。’, title=’確認’, buttons=[‘OK’, ‘Cancel’]) | |
メッセージボックスを表示 テキスト入力と [OK]および[キャンセル]ボタン | prompt( text=’テキスト’, title=’タイトル’ , default=” ) | > pyautogui.prompt(text=’これはプロンプトです。’, title=’プロンプト’ , default=”) | |
メッセージボックスを表示 テキスト入力と [OK]および[キャンセル]ボタン | password( text=’テキスト’, title=’タイトル’, default=”, mask=’*’ ) | > pyautogui.password(text=’これはパスワードです。’, title=’パスワード’, default=”, mask=’*’) |
簡単にプログラムを楽しむなら、M5Stackがおすすめです。
ディスプレー、スイッチ、センサが小さな機体にすべて含まれており、サンプルプログラムも豊富です。
リンク
まとめ
今回は、Pythonライブラリである、PyAutoGUIの関数の一覧を紹介しました。
- 【Pythonアプリ入門】音声認識アプリを作る方法(SpeechRecognition)
- 【Pythonアプリ入門】定期的に処理を実行するアプリの作り方(tkinterで実現)
- 【Pythonアプリ入門】定期的に処理を実行するアプリの作り方(並列処理で実現)
- 【Pythonアプリ入門】定期的に処理を実行するアプリの作り方(Scheduleモジュール)
- 【PythonでGUIアプリ入門】PySimpleGUI、Pyperclip を使った クリップボードアプリ の作り方
- 【PythonでGUIアプリ入門】PySimpleGUI を使った タイマーストップアプリ の作り方
リンク
コメント