見出し画像

【python】業務自動化~pyautogui~

PyAutoGUIは、Pythonのライブラリで、GUI(グラフィカルユーザーインターフェイス)操作の自動化を目的としています。このライブラリを使用すると、マウスの操作、キーボードの入力、画面のスクリーンショット取得など、ユーザーインターフェイス上の操作を自動的に実行することができます。


PyAutoGUIの主な機能

  1. マウス操作の自動化:

    • マウスの移動、クリック、ドラッグなどを自動で実行できます。

  2. キーボード操作の自動化:

    • キーボードのキー入力(文字やショートカットキー)をシミュレートできます。

  3. 画面のスクリーンショット取得:

    • 画面の指定した部分のスクリーンショットを取得して保存することができます。

  4. 画面上の画像検索:

    • 画面上の指定した画像を検索し、その位置を特定することができます。これにより、特定のボタンをクリックしたり、メニューを選択したりする自動化が可能です。

PyAutoGUIのインストール

PyAutoGUIは、Pythonのパッケージ管理ツールであるpipを使って簡単にインストールできます。

pip install pyautogui

pipが認識されないという方はこちらの記事をどうぞ

基本的な使い方

1. マウス操作

  • マウスの移動: マウスを指定した座標に移動します。

import pyautogui

# 座標 (x=500, y=500) にマウスを移動
pyautogui.moveTo(500, 500)
  • マウスを相対的に移動: 現在のマウスの位置から相対的に移動します。

# 現在の位置から、x軸50ピクセル、y軸50ピクセル移動
pyautogui.move(50, 50)
  • クリック: 指定した座標でマウスをクリックします。

# (x=500, y=500) でクリック
pyautogui.click(500, 500)
  • ドラッグ: マウスをクリックしながら指定した座標までドラッグできます。

# (x=500, y=500) から (x=600, y=600) までドラッグ
pyautogui.dragTo(600, 600, duration=1)  # duration はドラッグにかかる時間

2. キーボード操作

  • キー入力: 特定のキーをタイプすることができます。文字や特殊キー(例えば、Enter、Tab、Ctrlなど)も指定可能です。

pyautogui.write('Hello, World!')  # 文字をタイプ
pyautogui.write('Hello, World!', interval=0.1)  # 文字入力の間に0.1秒のインターバル
  • 特殊キー(Ctrl, Shift, Enter など)の操作: 特殊キーを使った操作も可能です。

pyautogui.press('enter')  # Enterキーを押す
pyautogui.hotkey('ctrl', 'c')  # Ctrl+C(コピー)
pyautogui.hotkey('ctrl', 'v')  # Ctrl+V(貼り付け)

3. 画面のスクリーンショット取得

  • スクリーンショットの取得: 画面全体や指定した領域のスクリーンショットを撮ることができます。

screenshot = pyautogui.screenshot()  # 画面全体のスクリーンショット
screenshot.save('screenshot.png')  # 保存

位置をしていすることもできます

screenshot = pyautogui.screenshot(region=(0, 0, 300, 300))  # 左上座標 (0, 0) から 300x300 の範囲をキャプチャ
screenshot.save('screenshot_part.png')

PyAutoGUIの安全機能

マウスカーソルが画面の隅に移動すると、スクリプトが強制終了される機能です。自動化スクリプトが無限ループなどで暴走しないようにするための安全機能です。

pyautogui.FAILSAFE = True  # デフォルトで有効

注意点

  • 安全に使用する: PyAutoGUIの自動化機能を使用している間は、意図しない操作を避けるために、マウスやキーボード操作を手動で行わないように注意してください。もし途中で操作を中断したい場合は、先ほど述べたFAILSAFE機能を活用しましょう。


いかがでしょうかpyautoguiをつかうとその名の通り、gui(Graphical User Interface)を自動で操作できるようになります。ぜひこれを活用し、毎日の単純な作業などをダブルクリックであとは機械に任せてしまってください!

以上YOUHEI!でした!


いいなと思ったら応援しよう!