さらに技術的なコンテンツを共有するには、クリックしてください!
序文
Pywinauto は、Windows アプリケーションのインターフェイス操作を自動化するための強力な Python ライブラリです。GUI テスト、データ収集、自動化タスクのいずれであっても、Pywinauto は便利なソリューションを提供できます。この記事では、読者がすぐに使い始めて Windows インターフェイス操作の自動化を開始できるように、Pywinauto の基本的な使用法を紹介します。
インストール
pywinauto のインストールは他のライブラリと同様で、必要なコマンドは次の 1 つだけです。
pip install pywinauto
インポートモジュール
Python スクリプトで Pywinauto の必要なモジュールをインポートします (通常Application
は と が含まれますfindwindows
)。
from pywinauto import Application
from pywinauto import findwindows
アプリケーションを開始する
Application
クラスのメソッドを使用してstart()
ターゲット アプリケーションを起動します。次の例は、メモ帳アプリケーションを起動する方法を示しています。
app = Application().start("notepad.exe")
スクリプトを実行すると、以下に示すように、空白のメモ帳ページが開きます。
アプリケーションウィンドウに接続する
findwindows
モジュールの関数を使用してfind_windows()
アプリケーション ウィンドウのハンドルを見つけ、Application
クラスのconnect()
メソッドを使用してウィンドウに接続します。
handle = findwindows.find_windows(title='Untitled - Notepad', class_name='Notepad')[0]
app = Application().connect(handle=handle)
ハンドル検索時にエラーが発生した場合、タスクマネージャーでアプリケーションのプロセスIDを確認する、つまりPID
プロセスIDで接続する方法は以下の通りです。
handle = findwindows.find_windows(process=14720)[0]
app = Application().connect(handle=handle)
アプリケーションウィンドウコントロールの操作
Application
クラスのメソッドを使用してwindow()
アプリケーション ウィンドウ オブジェクトを取得すると、コントロールのプロパティとメソッドを通じてウィンドウを操作できます。次の例は、メモ帳にテキストを入力して保存する方法を示しています。
window = app.window(title='Untitled - Notepad')
edit = window.Edit
edit.type_keys("曼城是冠军!")
window.menu_select("File->Save")
window.SaveAs.Edit.set_text("test.txt")
window.SaveAs.Save.click()
ダイアログ ボックスとメッセージ ボックスの処理
ポップアップダイアログボックスやメッセージボックスはApplication
クラスDialog
メソッドを使用して操作できます。次の例は、保存確認ダイアログを処理する方法を示しています。
dialog = app.Dialog
dialog.SaveAs.Yes.click()
アプリケーションを閉じる
操作が完了したら、Application
クラスのメソッドを使用してkill()
アプリケーションを閉じることができます。
app.kill()
要約する
この記事では、インストール、モジュールのインポート、アプリケーションの起動、アプリケーション ウィンドウへの接続、ウィンドウ コントロールの操作、ダイアログ ボックスやメッセージ ボックスの処理、アプリケーションの終了など、Pywinauto の基本的な使用方法を紹介します。これらの基本的な概念とテクニックを習得することで、読者は Pywinauto を使用して Windows インターフェイスの操作を簡単に自動化し、作業効率を向上させることができます。この記事が Pywinauto を始めるのに役立つことを願っています。