業務の自動化や効率化は、現代のビジネスにおいて欠かせないテーマです。Pythonには、マウスやキーボードの操作からスケジュール実行、フォルダ監視まで、多彩な自動化を実現するライブラリが揃っています。
この記事では、実務でもすぐに活用できる自動化系ライブラリとして「pyautogui」「schedule」「watchdog」の3つをわかりやすく紹介します。
pyautoguiでマウス・キーボード操作を自動化
「pyautogui」は、マウスの移動やクリック、キーボード入力などをPythonから自動で行えるライブラリです。
手作業で行っている同じ操作を自動化することで、単純作業の手間を大幅に削減できます。
例えば以下のような使い方が可能です。
- 毎朝同じアプリを開いてレポートをダウンロード
- ウェブ画面上のボタンを自動でクリック
- 画像認識による自動操作の実行
import pyautogui
pyautogui.moveTo(100, 200)
pyautogui.click()
pyautogui.write("定型文")
pyautogui.press("enter")
scheduleでスクリプトを定期実行
「schedule」は、Pythonスクリプトを定期的に実行したいときに便利なライブラリです。cronのような設定をコードでシンプルに管理できます。
例えば、「毎日9時に処理を実行」など、定時業務の自動化にぴったりです。
import schedule
import time
def job():
print("毎朝の処理実行中...")
schedule.every().day.at("09:00").do(job)
while True:
schedule.run_pending()
time.sleep(1)
watchdogでフォルダの変化を監視して自動処理
「watchdog」は、フォルダ内のファイル変更をリアルタイムに検知し、処理を自動で行えるライブラリです。
以下のような自動化に最適です。
- 新しいファイルがアップロードされたら自動で処理
- ログフォルダの更新に応じてバックアップ
- ファイルの変更をトリガーにAI処理を起動
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
import time
class MyHandler(FileSystemEventHandler):
def on_modified(self, event):
print(f"{event.src_path}が変更されました")
observer = Observer()
observer.schedule(MyHandler(), path=".", recursive=False)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
まとめ
これらのライブラリは、単体でも強力ですが、組み合わせることでさらに効率的な業務自動化が可能です。例えば、watchdog
で新しいファイルを検知 → pyautogui
でブラウザ操作 → schedule
で毎日チェック、という流れも実現できます。
日々のルーチンを自動化することで、人的ミスを防ぎ、空いた時間を創造的な仕事に充てることができます。