Pythonには、マウスやキーボードの操作を自動化できる「PyAutoGUI」という便利なライブラリがあります。手作業で行っていたクリックや入力作業をスクリプトで簡単に実行できるため、業務の効率化や自動化の第一歩として人気です。
本記事では、初心者でも分かりやすいようにPyAutoGUIの基本的な使い方を解説し、Pythonで画面操作を自動化する方法を詳しく紹介します。専門用語も丁寧に解説しながら進めるので、プログラミング初心者でも安心して読み進められます。
PyAutoGUIとは?Pythonで画面操作を自動化するライブラリ
PyAutoGUI(パイオートジーアイユー)は、Pythonでマウスやキーボードの操作を自動化するライブラリです。これを使うと、マウスの移動・クリック、キーボード入力、スクリーンショットの撮影などをプログラムで制御できます。
例えば、次のような作業を自動化できます。
- 定型的なマウスクリック(例:毎日同じボタンをクリック)
- キーボード入力の自動化(例:ログイン情報の入力)
- 画像認識を用いたクリック(例:ボタンの場所を特定してクリック)
PyAutoGUIは、手動で行っていた操作をPythonコードで再現し、効率化や自動化を簡単に実現できる点が魅力です。
PyAutoGUIのインストール方法と基本設定
PyAutoGUIはPythonのライブラリなので、まずはインストールが必要です。インストールは、ターミナルまたはコマンドプロンプトで次のコマンドを実行するだけです。
pip install pyautogui
インストールの確認
インストールが完了したら、Pythonのコードで動作を確認してみましょう。次のコマンドを実行し、エラーが出なければインストールは成功しています。
import pyautogui
print(pyautogui.position()) # 現在のマウスの位置を取得
このコードを実行すると、現在のマウスカーソルの座標が表示されます。これで、PyAutoGUIを使用する準備が整いました。
PyAutoGUIの基本操作|Pythonでマウス・キーボードを自動化しよう
PyAutoGUIを使うことで、マウス操作やキーワードの操作を自動化することが可能です。
マウス操作を自動化する方法
PyAutoGUIを使うと、マウスの移動やクリックをプログラムで制御できます。
マウスカーソルの移動
import pyautogui
pyautogui.moveTo(100, 200) # X=100, Y=200の位置にカーソルを移動
このコードを実行すると、マウスカーソルが座標 (100, 200) の位置に移動します。
マウスクリック
import pyautogui
pyautogui.click(100, 200) # 指定した座標をクリック
座標 (100, 200) にあるボタンをクリックするイメージです。
ダブルクリック・右クリック
import pyautogui
pyautogui.doubleClick(100, 200) # ダブルクリック
pyautogui.rightClick(100, 200) # 右クリック
キーボード操作を自動化する方法
PyAutoGUIを使えば、キーボード入力も自動化できます。
文字を入力する
import pyautogui
pyautogui.write("Hello, PyAutoGUI!", interval=0.1)
このコードは、「Hello, PyAutoGUI!」とタイピングし、各文字の入力間隔を0.1秒に設定しています。
特殊キーを押す
import pyautogui
pyautogui.press("enter") # Enterキーを押す
pyautogui.hotkey("ctrl", "c") # Ctrl + C(コピー)
「Enterキーの押下」や「ショートカットキーの実行」も可能です。
PyAutoGUIの応用|画像認識で特定のボタンをクリックする
PyAutoGUIの便利な機能の一つが画像認識です。特定のボタンやアイコンを画像として保存し、その画像が画面上にあるかを検索できます。
画像認識を使ってクリックする
import pyautogui
button = pyautogui.locateOnScreen("button.png", confidence=0.8)
if button:
pyautogui.click(button)
このコードは、button.png という画像を探し、見つかったらその場所をクリックします。confidence=0.8
で類似度を設定し、多少の違いがあっても認識できるようにしています。
この機能を使えば、GUI操作の自動化がより柔軟になります。
PyAutoGUIを使う際の注意点
PyAutoGUIは、画面の座標を基に操作するため、画面解像度が異なると動作がずれることがあります。スクリプトを実行するPCの設定を統一することが大切です。
また、PyAutoGUIの動作が速すぎてエラーが発生する場合は、pyautogui.PAUSE
を使って処理の間隔を調整できます。
pyautogui.PAUSE = 0.5 # 各操作の間に0.5秒の待機時間を追加
これにより、マウスやキーボードの操作が適切な速度で実行されるようになります。
PyAutoGUIの活用例|Pythonでできる画面操作の自動化
PyAutoGUIはさまざまな場面で活用できます。
データ入力の自動化
エクセルやWebフォームに同じ情報を入力する作業をスクリプトで自動化できます。
ゲームのマクロ作成
ボタンを連続クリックする作業を自動化し、ゲームの操作を効率化できます。
監視ツールの作成
特定の画面変化を画像認識で検出し、異常を通知する監視ツールを作ることも可能です。
まとめ
本記事では、PyAutoGUIを使ったPythonでの画面操作の自動化方法を解説しました。
- PyAutoGUIは、マウス・キーボード操作をPythonで制御できるライブラリ
- マウス移動、クリック、キーボード入力、画像認識による操作が可能
- 仕事の効率化やゲームの自動化など、幅広い用途で活用できる
初心者でも簡単に使えるため、ぜひPyAutoGUIを試してみてください!