Pywinautoとは
Pywinautoは、PythonでPC操作の自動化 (RPA)を行うためのライブラリです。主に以下の2つのバックエンドがあります。
- UI Automationベース (
backend="uia"
):64ビットアプリを接続対象とします。 - Win32 API ベース (
backend="win32"
):32ビットアプリを接続対象とします。
また、アプリを制御するために利用するオブジェクトとして、以下の2つがあります。
- Applicationオブジェクト:プロセスをまたがない制御を行います。
- Desktopオブジェクト:プロセスをまたぐ制御を行います。
Pywinautoのインストール
Pywinautoのインストールは非常に簡単で、以下のコマンドを実行するだけです。
pip install pywinauto
Pywinautoの基本的な使い方
以下に、メモ帳を起動し、文字を入力し、ファイルを保存するという基本的な操作をpywinautoで行う例を示します。
from pywinauto.application import Application
# メモ帳を起動する
app = Application(backend="uia").start("notepad.exe")
# Hello Pywinautoと入力する
app[u"無題メモ帳"].Edit.set_edit_text(u"Hello Pywinauto")
# 名前を付けて保存
app[u"無題メモ帳"].menu_select(u"ファイル -> 名前を付けて保存")
# 保存ダイアログ選択
dialog = app[u"無題 - メモ帳Dialog"]
# ファイル名入力
dialog[u'ファイル名2'].Edit.set_edit_text(u"テスト.txt")
# 保存ボタン押下
dialog[u'保存'].click()
このコードを実行すると、メモ帳が起動し、文字が入力され、ファイルが保存されます。
以上が、Pythonとpywinautoを使ったWindows自動化の基本的な使い方です。これを基に、さまざまな自動化タスクを作成してみてください。