Pythonでマウス操作を自動化したい方に向けて、基本的なやり方から実践的なテクニックまで、初心者にもわかりやすく解説します。本記事を読めば、日々の面倒な作業を効率化できる自動化スクリプトが作れるようになります。
Pythonのマウス操作は「PyAutoGUI」や「pynput」で簡単に実現できる
Pythonでマウスの移動やクリック、ドラッグ、スクロールなどの操作を自動化するには、「PyAutoGUI」や「pynput」といったライブラリを使うのが一般的です。これらを活用すれば、どんなアプリケーションでも人間の代わりにマウス操作を自動化できます。
なぜPythonでマウス操作を自動化するのか?
- ExcelやWebブラウザなど、Pythonで直接操作できるアプリは多いですが、全てのアプリに対応しているわけではありません。
- 直接操作できないアプリでも、マウスとキーボードを自動化することで作業効率を大幅にアップできます。
主要ライブラリの特徴と使い方
PyAutoGUI
インストール方法
pip install pyautogui
基本的な使い方
操作 | コマンド例 | 説明 |
---|---|---|
マウス移動 | pyautogui.moveTo(300, 400) | 指定座標(x=300, y=400)に移動 |
現在位置取得 | pos_x, pos_y = pyautogui.position() | 現在のマウス座標を取得 |
左クリック | pyautogui.click() | 現在位置で左クリック |
座標指定クリック | pyautogui.click(x=100, y=200) | 指定位置でクリック |
右クリック | pyautogui.click(button='right') | 右クリック |
ダブルクリック | pyautogui.click(clicks=2, interval=0.5) | 0.5秒間隔で2回クリック |
長押し | pyautogui.mouseDown() / pyautogui.mouseUp() | マウスボタンの押下・解除 |
スクロール | pyautogui.scroll(500) / pyautogui.scroll(-500) | 上方向/下方向にスクロール |
応用例:ペイントで四角形を自動描画
import pyautogui
length = 100
pyautogui.moveTo(300, 400)
pyautogui.mouseDown()
pyautogui.moveTo(700, 400)
pyautogui.moveTo(700, 500)
pyautogui.moveTo(300, 500)
pyautogui.moveTo(300, 400)
pyautogui.mouseUp()
このように座標を指定して移動・クリック・ドラッグなどを組み合わせることで、複雑な操作も自動化できます。
pynput
インストール方法
pip install pynput
基本的な使い方
from pynput.mouse import Button, Controller
mouse = Controller()
mouse.position = (500, 300) # 指定位置に移動
mouse.click(Button.left, 1) # 左クリック
mouse.press(Button.left) # ボタン押下
mouse.move(100, 100) # 相対移動
mouse.release(Button.left) # ボタン離す
mouse.scroll(0, 2) # スクロール
pynputはイベント駆動型の記述が得意で、クリックイベントの監視やリアルタイム制御にも向いています。
マウス操作自動化のポイント
- 座標指定:画面左上が(0,0)。モニター解像度によって最大値が異なるため、事前に座標を確認しましょう。
- クリックの種類:左クリック、右クリック、ダブルクリック、長押しなど多様な操作が可能です。
- スクロールやドラッグ:ホイール操作やドラッグ&ドロップも簡単に自動化できます。
- 画像認識との連携:PyAutoGUIは画像認識で特定ボタンを探してクリックすることも可能です。
まとめ
Pythonでマウス操作を自動化するには「PyAutoGUI」や「pynput」が便利です。座標指定やクリック、スクロール、ドラッグなど多彩な操作が簡単に実装でき、日々の作業効率化に大きく貢献します。まずはサンプルコードを試して、身近な作業から自動化を始めてみましょう。
コメント