PythonでRPA!PyAutoGUIを活用した業務自動化の方法

IT技術

日々の繰り返し作業を自動化したいと思ったことはありませんか? Pythonの「PyAutoGUI」ライブラリを活用すれば、手作業で行っていたオフィスワークやPC操作を簡単に自動化できます。本記事では、PyAutoGUIを使ったRPA(Robotic Process Automation)の基礎から応用までを詳しく解説します。


スポンサーリンク

PyAutoGUIとは?

PyAutoGUIは、Pythonを使用してPCのマウスやキーボード操作を自動化できるライブラリです。

主な機能

  • マウス操作:クリック、移動、ドラッグ
  • キーボード入力:キー入力、ショートカットキー操作
  • スクリーンキャプチャ:画像認識によるGUI要素の検出
  • メッセージボックス:確認用のポップアップ表示

これらの機能を組み合わせることで、手作業で行っていたルーチンワークを効率的に自動化できます。


PyAutoGUIのインストールと基本操作

 



まず、PyAutoGUIをインストールしましょう。

pip install pyautogui

次に、基本的な操作を確認していきます。

画面サイズの取得

import pyautogui

# 画面サイズを取得
screen_width, screen_height = pyautogui.size()
print(f"画面サイズ: {screen_width}x{screen_height}")

マウス操作の基本

# マウスを特定の位置に移動
pyautogui.moveTo(500, 500, duration=1)

# クリック操作
pyautogui.click()

# ドラッグ操作
pyautogui.dragTo(100, 100, duration=2)

キーボード操作の基本

# 文字入力
pyautogui.write("Pythonで自動化", interval=0.1)

# ショートカットキー操作(Ctrl + S)
pyautogui.hotkey("ctrl", "s")

PyAutoGUIを使用したRPAの具体例

 



1. Webアプリのログイン自動化

以下のスクリプトは、ブラウザを開いてログイン操作を自動化します。

import pyautogui
import webbrowser
import time

# 指定のURLを開く
webbrowser.open("https://example.com/login")
time.sleep(3)

# ユーザー名の入力
pyautogui.click(500, 300)
pyautogui.write("my_username")

# パスワードの入力
pyautogui.click(500, 350)
pyautogui.write("my_password")

# ログインボタンをクリック
pyautogui.click(500, 400)

2. Excelデータの入力自動化

Excelに定型データを入力する作業も自動化できます。

# Excelを開く
pyautogui.press("win")
time.sleep(1)
pyautogui.write("Excel")
pyautogui.press("enter")
time.sleep(3)

# セルにデータを入力
pyautogui.click(300, 300)
pyautogui.write("データ入力自動化")

3. 画像認識によるボタンクリック

特定のボタンやアイコンをスクリーン上で検出し、クリックすることも可能です。

# 画像を認識してクリック
button_location = pyautogui.locateOnScreen('login_button.png', confidence=0.8)
if button_location:
    pyautogui.click(button_location)
    print("ボタンをクリックしました")
else:
    print("ボタンが見つかりません")

PyAutoGUIの自動実行方法

定期的にスクリプトを実行するために、以下の方法を活用できます。

Windowsの場合(タスクスケジューラ)

  1. 「タスクスケジューラ」を開く
  2. 「基本タスクの作成」→スクリプトのパス(例:C:\path\to\script.py)を指定
  3. スケジュール(毎日・毎時間など)を設定

macOS/Linuxの場合(cron)

ターミナルで以下のコマンドを入力し、スケジュールを設定します。

crontab -e

例: 毎日午前9時にスクリプトを実行

0 9 * * * /usr/bin/python3 /path/to/script.py

PyAutoGUIを使う際の注意点

  • 解像度依存:スクリプトはPCの画面解像度に依存するため、環境が異なると調整が必要。
  • 誤動作防止:安全対策として、マウスを画面の隅に動かすとスクリプトを停止する設定を活用。
pyautogui.FAILSAFE = True

まとめ

PyAutoGUIを活用すれば、手作業による繰り返し業務を簡単に自動化できます。特に以下のような作業に役立ちます。

  • 定型的なデータ入力(Excel、Webフォームなど)
  • ボタン操作を伴う反復作業
  • 画像認識を用いたGUI操作の自動化

これを機に、PythonでRPAに挑戦してみませんか?

コメント

タイトルとURLをコピーしました