★悩み★
・PyAutoGUIでどのようなマウス操作を自動化できる?
・マウスの現状の位置座標や画面サイズも取得できる?
・マウスのスクロール操作、ドラッグ操作、クリックや移動操作は可能?
こういった「悩み」に答えます。
★本記事の内容★
① PyAutoGUIとは?
② PyAutoGUIでマウスのクリック操作を自動化【よく使う3事例を紹介】
➂ PyAutoGUIで自動化できるマウスの移動操作【よく使う4事例を紹介】
これからご紹介する「【最短5分】PyAutoGUIで多用するマウス操作の自動化7選」を実践したことで、5分以内で「マウスのドラッグ操作を自動化」(下の動画参照)できました。
記事の前半では「PyAutoGUIとは?」や「PyAutoGUIのインストール方法」を解説します。
記事の後半ではPyAutoGUIでよく使う「マウスのクリック操作3パターン」と「マウスの移動操作4パターン」をプログラムと実行例をもとに紹介します。
この記事を読み終えることで、「PyAutoGUIでマウス操作を自動化できる」状態になります。
PyAutoGUIとは?
「PyAutoGUIとは?」/「PyAutoGUIの特徴」/「PyAutoGUIのユースケース(利用場面)」に関しては、以下の記事をご覧ください。
>> 【要点】PyAutoGUIとは?初心者向けに特徴から使い方までを図解
また、PyAutoGUIのインストール方法に関しては、以下の記事をご覧ください。
>> 【最短5分】PyAutoGUIをWindowsにインストールする手順
>> 【最短5分】UbuntuにPyAutoGUIをインストールする手順
>> 【最短5分】MacにPyAutoGUIをインストールする手順
ウェブブラウザなどの画面操作を自動化をしたい場合、PyAutoGUIを使って無料で実現できます。
以降で、PyAutoGUIでマウスのクリックや移動操作を自動化する方法をご紹介しますね。
PyAutoGUIでマウスのクリック操作を自動化
「PyAutoGUIでマウスのクリック操作を自動化」に関してご紹介します。
★PyAutoGUIでよく使うマウスのクリック操作に関するご紹介事項★
・左クリック操作:click
・右クリック操作:rightClick
・ダブルクリック操作:doubleClick
PyAutoGUIを使うことで、「左クリック」「右クリック」「ダブルクリック」といったマウスのクリック操作を自動化できます。
上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2022年7月10日
動作確認済み環境:Windows Pro 11
以降で、上記「PyAutoGUIでよく使うマウスのクリック操作に関するご紹介事項」の各項目に関してご説明します。
左クリック操作:click
「左クリック操作:click」に関して説明します。
PyAutoGUIで左クリック操作を自動化したい場合、「click」を使います。
「click」の構文は、以下となります。
★clickの構文(リファレンス)★
・機能
マウスの左クリック操作をする
・使い方
click(<任意:x=数字>, <任意:y=数字>)
・例1
click()
・例1の実行結果
マウスの現在位置で左クリックをする
・例2
click(x=100, y=200)
・例2の実行結果
マウスをX座標100、Y座標200に移動させてから左クリックをする
・参照
click関数のリファレンス(公式サイト)
それでは、上記のclickを使って、PyAutoGUIでマウスの左クリック操作を自動化してみましょう。
以下のプログラムを作成し、「pyautogui-mouse-left-click.py」というファイル名で保存してください。
import pyautogui
import time
# clickでマウスの現在位置で左クリック
pyautogui.click()
time.sleep(5)
# clickでマウスをX座標100、Y座標200に移動させてから左クリック
pyautogui.click(x=100, y=200)
print('PyAutoGUIのclickでマウスの左クリックを操作しました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-mouse-left-click.py
コマンド実行後、下の動画のように「マウスの現在位置で左クリック後に、X座標100・Y座標100に配置されたアイコン(動画内ではコマンドプロンプト)を左クリック」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
以上が、「左クリック操作:click」となります。
右クリック操作:rightClick
「右クリック操作:rightClick」に関して解説します。
PyAutoGUIで右クリック操作を自動化したい場合、「rightClick」を使います。
「rightClick」の構文は、以下となります。
★rightClickの構文(リファレンス)★
・機能
マウスの右クリック操作をする
・使い方
rightClick(<任意:x=数字>, <任意:y=数字>)
・例1
rightClick()
・例1の実行結果
マウスの現在位置で右クリックをする
・例2
rightClick(x=100, y=200)
・例2の実行結果
マウスをX座標100、Y座標200に移動させてから右クリックをする
・参照
rightClick関数のリファレンス(公式サイト)
それでは、上記のrightClickを使って、PyAutoGUIでマウスの右クリック操作を自動化してみましょう。
以下のプログラムを作成し、「pyautogui-mouse-rightClick.py」というファイル名で保存してください。
import pyautogui
import time
# rightClickでマウスの現在位置で右クリック
pyautogui.rightClick()
time.sleep(5)
# rightClickでマウスをX座標100、Y座標200に移動させてから右クリック
pyautogui.rightClick(x=100, y=200)
print('PyAutoGUIのrightClickでマウスの右クリックを操作しました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-mouse-rightClick.py
コマンド実行後、下の動画のように「マウスの現在位置で右クリック後に、X座標100・Y座標100に配置されたアイコン(動画内ではコマンドプロンプト)を右クリック」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
以上が、「右クリック操作:rightClick」となります。
ダブルクリック操作:doubleClick
「ダブルクリック操作:doubleClick」に関して解説します。
PyAutoGUIでダブルクリック操作を自動化したい場合、「doubleClick」を使います。
「doubleClick」の構文は、以下となります。
★doubleClickの構文(リファレンス)★
・機能
マウスのダブルクリック操作をする
・使い方
doubleClick(<任意:x=数字>, <任意:y=数字>)
・例1
doubleClick()
・例1の実行結果
マウスの現在位置でダブルクリックをする
・例2
doubleClick(x=100, y=200)
・例2の実行結果
マウスをX座標100、Y座標200に移動させてからダブルクリックをする
・参照
doubleClick関数のリファレンス(公式サイト)
それでは、上記のdoubleClickを使って、PyAutoGUIでマウスのダブルクリック操作を自動化してみましょう。
以下のプログラムを作成し、「pyautogui-mouse-doubleClick.py」というファイル名で保存してください。
import pyautogui
import time
# doubleClickでマウスの現在位置でダブルクリック
pyautogui.doubleClick()
time.sleep(5)
# doubleClickでマウスをX座標100、Y座標200に移動させてからダブルクリック
pyautogui.doubleClick(x=100, y=200)
print('PyAutoGUIのdoubleClickでマウスのダブルクリックを操作しました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-mouse-doubleClick.py
コマンド実行後、下の動画のように「マウスの現在位置でダブルクリック後に、X座標100・Y座標100に配置されたアイコン(動画内ではコマンドプロンプト)をダブルクリック」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
以上が、「ダブルクリック操作:doubleClick」となります。
上記のようにPyAutoGUIを使うことで、マウスの「左クリック」「右クリック」「ダブルクリック」操作を簡単に自動化できます。
PyAutoGUIで自動化できるマウスの移動操作
「PyAutoGUIで自動化できるマウスの移動操作」に関してご紹介します。
★PyAutoGUIで自動化できるマウスの移動操作一覧★
・画面のサイズとカーソルの位置を取得:sizeとposition
・カーソルの移動:moveとmoveTo
・スクロール操作:scrollとhscroll
・ドラッグ操作:dragとdragTo
PyAutoGUIを使うことで、上記のマウスの移動操作を自動化できます。
上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2022年7月10日
動作確認済み環境:Windows 11 pro
以降で、上記「PyAutoGUIで自動化できるマウスの移動操作」の各項目に関してご説明します。
画面のサイズとカーソルの位置を取得:sizeとposition
「画面のサイズとカーソルの位置を取得:sizeとposition」に関して説明します。
PyAutoGUIで画面のサイズとカーソルの位置を取得したい場合、「size」と「position」を使います。
「size」の構文は、以下となります。
★sizeの構文(リファレンス)★
・機能
メインディスプレイの画面サイズを取得する
・使い方
size()
・例
size()
・実行結果
Size(width=1920, height=1080)という形で画面サイズを取得する
・参照
size関数のリファレンス(公式サイト)
また、「position」の構文は、以下となります。
★positionの構文(リファレンス)★
・機能
マウスの現在のカーソル位置を取得する
・使い方
position()
・例
position()
・実行結果
Point(x=811, y=641)という形でマウスのカーソル位置を取得する
・参照
position関数のリファレンス(公式サイト)
それでは、上記のsizeとpositionを使って、PyAutoGUIで画面サイズとマウスのカーソル位置に関する情報を取得してみましょう。
以下のプログラムを作成し、「pyautogui-size-position.py」というファイル名で保存してください。
import pyautogui
# sizeでメインディスプレイの画面サイズを取得
print( pyautogui.size() )
print('PyAutoGUIのsizeでメインディスプレイの画面サイズを取得しました。')
# positionで現在のマウスのカーソル位置を取得
print( pyautogui.position() )
print('PyAutoGUIのpositionで現在のマウスのカーソル位置を取得しました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-size-position.py
Size(width=1920, height=1080)
PyAutoGUIのsizeでメインディスプレイの画面サイズを取得しました。
Point(x=811, y=641)
PyAutoGUIのpositionで現在のマウスのカーソル位置を取得しました。
コマンド実行後、「Size」と「Point」が表示された場合、「正常に作成したプログラムを実行できた」と判断できます。
以上が、「画面のサイズとカーソルの位置を取得:sizeとposition」となります。
カーソルの移動:moveとmoveTo
「カーソルの移動:moveとmoveTo」に関して説明します。
PyAutoGUIでマウスのカーソルを移動させたい場合、「move」または「moveTo」を使います。
「move」の構文は、以下となります。
★moveの構文(リファレンス)★
・機能
現在の位置からマウスカーソルを指定した位置だけ移動させる
・使い方
move(X座標の数字, Y座標の数字, <任意:移動にかける秒数>)
・例
move(100, 200)
・実行結果
現在の位置からマウスカーソルをX座標100、Y座標200だけ移動させる
・参照
move関数のリファレンス(公式サイト)
また、「moveTo」の構文は、以下となります。
★moveToの構文(リファレンス)★
・機能
マウスカーソルを指定した位置に移動させる
・使い方
moveTo(X座標の数字, Y座標の数字, <任意:移動にかける秒数>)
・例
moveTo(100, 200)
・実行結果
マウスカーソルをX座標100、Y座標200の位置に移動させる
・参照
moveTo関数のリファレンス(公式サイト)
以下の使い分けで覚えておきましょう。
・move:指定した座標だけその場からカーソルを移動させたい場合に使う
・moveTo:指定した位置にマウスカーソルを移動させたい場合に使う
それでは、上記のmoveとmoveToを使って、PyAutoGUIでマウスのカーソルを移動させてみましょう。
以下のプログラムを作成し、「pyautogui-move-moveTo.py」というファイル名で保存してください。
import pyautogui
import time
# moveToで指定した位置にマウスカーソルを移動させる
pyautogui.moveTo(100,200, 2)
time.sleep(5)
# moveで指定した位置だけマウスカーソルを移動させる
pyautogui.moveTo(100,400, 2)
print('PyAutoGUIのmoveとmoveToでマウスカーソルを移動させました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-move-moveTo.py
コマンド実行後、下の動画のように「マウスのカーソルが自動的に移動」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
以上が、「カーソルの移動:moveとmoveTo」となります。
スクロール操作:scrollとhscroll
「スクロール操作:scrollとhscroll」に関して解説します。
「横方向(左右)のスクロール」をしたい場合、「hscroll」を使います。
「縦方向(上下)のスクロール」をしたい場合、「scroll」を使います。
「hscroll」の構文は、以下となります。
★hscrollの構文(リファレンス)★
・機能
指定した数字だけ横方向(左右)のスクロールをします。
・使い方
hscroll(数字)
・例1
hscroll(50)
・例1の実行結果
右方向に50だけスクロールさせる
・例2
scroll(-50)
・例2の実行結果
左方向に50だけスクロールさせる
・参照
hscroll関数のリファレンス(公式サイト)
・注意
hscrollは、Mac(macOS)かLinux上でしか動作しません。
また、「scroll」の構文は、以下となります。
★scrollの構文(リファレンス)★
・機能
指定した数字だけ縦方向(上下)のスクロールをします。
・使い方
scroll(数字)
・例1
scroll(50)
・例1の実行結果
上方向に50だけスクロールさせる
・例2
scroll(-50)
・例1の実行結果
下方向に50だけスクロールさせる
・参照
scroll関数のリファレンス(公式サイト)
それでは、上記のscrollとhscrollを使って、PyAutoGUIでスクロール操作を自動化てみましょう。
以下のプログラムを作成し、「pyautogui-scroll-hscroll.py」というファイル名で保存してください。
import pyautogui
import time
# moveToで指定した位置にマウスカーソルを移動させる
pyautogui.moveTo(100,200, 2)
time.sleep(5)
# moveで指定した位置だけマウスカーソルを移動させる
pyautogui.moveTo(100,400, 2)
print('PyAutoGUIのmoveとmoveToでマウスカーソルを移動させました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-scroll-hscroll.py
コマンド実行後、下の動画のように「画面のウィンドウがスクロール」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
以上で、「スクロール操作:scrollとhscroll」は完了です。
ドラッグ操作:dragとdragTo
「ドラッグ操作:dragとdragTo」に関して説明します。
PyAutoGUIでドラッグ操作をしたい場合、「drag」または「dragTo」を使います。
「drag」の構文は、以下となります。
★dragの構文(リファレンス)★
・機能
左/中央/右クリックを押したまま指定した位置だけドラッグする。
・使い方
drag(X座標の値, Y座標の値, <任意:秒>, button=<left or middle or right>)
・例
drag(0, 200, button=’left’)
・実行結果
現在の位置から左クリックをドラッグし、X座標0、Y座標200だけ移動
・参照
drag関数のリファレンス(公式サイト)
また、「dragTo」の構文は、以下となります。
★dragToの構文(リファレンス)★
・機能
左/中央/右クリックを押したまま指定した位置までドラッグする。
・使い方
dragTo(X座標の値, Y座標の値, <任意:秒>, button=<left or middle or right>)
・例
dragTo(0, 200, button=’left’)
・実行結果
現在の位置から左クリックをドラッグし、X座標0、Y座標200まで移動
・参照
dragTo関数のリファレンス(公式サイト)
以下の使い分けで覚えておきましょう。
・drag:指定した座標だけドラッグしたい場合に使う
・dratTo:指定した位置までドラッグしたいさせたい場合に使う
それでは、上記のdragとdragToを使って、PyAutoGUIでマウスのカーソルを移動させてみましょう。
以下のプログラムを作成し、「pyautogui-drag-dragTo.py」というファイル名で保存してください。
import pyautogui
import time
# dragToで指定した座標までドラッグする
pyautogui.dragTo(0,10, 1, button='left')
time.sleep(5)
# dragで現在位置から指定した座標だけドラッグする
pyautogui.drag(300,300, 1,button='left')
print('PyAutoGUIのdragとdragToでマウスのドラッグ操作を自動化しました。')
続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。
python pyautogui-drag-dragTo.py
コマンド実行後、下の動画のように「画面上でドラッグ操作」ができた場合、「正常に作成したプログラムを実行できた」と判断できます。
以上が、「ドラッグ操作:dragとdragTo」となります。
上記7つのパターンが、PyAutoGUIでマウス操作を自動化をする際によく使われます。
ちなみに、「PyAutoGUIでExcelやWordの操作を自動化する方法は?」や「Pythonを基礎から体系的に学ぶ方法は?」などを知りたい方には、以下の記事で紹介している本や教材がオススメです。
>> PyAutoGUIの入門に役に立つオススメ本や教材6選
【まとめ】PyAutoGUIで多用するマウス操作の自動化7選【最短5分】
いかがでしたでしょうか?
PyAutoGUIで「クリック」「スクロール」「カーソル移動」「画面サイズや現在のカーソル位置の取得」「ドラッグ」といったマウス操作を自動化したプログラムと実行例を紹介し、以下の悩みを解決しました。
★悩み★
・PyAutoGUIでどのようなマウス操作を自動化できる?
・マウスの現状の位置座標や画面サイズも取得できる?
・マウスのスクロール操作、ドラッグ操作、クリックや移動操作は可能?
マウス操作の自動化をしたい場合、PyAutoGUIを検討してみてください。
コメント