私は見たことがあります この投稿 AutoIt3 COMバージョンがあり、それを使用してPythonでAutoIt関数を呼び出すことができます。
AutoItのWebサイトでCOMバージョンが見つかりませんでした。どこかに隠されていますか?どうすれば入手できますか?
PythonでAutoItを使用する方法は2つあります。
PyautoitモジュールはDLLを使用しますが、pywin32ではCOMを使用できます。私が知る限り、この2つに機能的な違いはありません。
すべてのAutoIt機能がCOM/DLLインターフェースを介して利用できるわけではありません。機能を確認するには、AutoItXのヘルプファイルを参照してください。
Pipまたはお好みの方法でインストールします。
pip install -U pyautoit
エラーが発生した場合:WindowsError: [Error 193] %1 is not a valid Win32 application
pyautoitをインストールするときは、32ビットバージョンのpythonを使用してください。 64ビットバージョンのPythonを使用してpyautoitをインストールすることができませんでした。もちろん、マイレージは異なる場合があります。
インポートして使用する:
import autoit
autoit.run("notepad.exe")
autoit.win_wait_active("[CLASS:Notepad]", 3)
autoit.control_send("[CLASS:Notepad]", "Edit1", "hello world{!}")
autoit.win_close("[CLASS:Notepad]")
autoit.control_click("[Class:#32770]", "Button2")
Autoitコマンドはすべて、AutoItXが推奨するCamelCaseではなく、lower_case_with_underscoresを使用します。したがって、ControlSendはcontrol_sendになり、WinCloseはwin_closeになります。
Pywin32がインストールされたら、次の方法でAutoItX関数を呼び出します。
import win32com.client
autoit = win32com.client.Dispatch("AutoItX3.Control")
autoit.Run("NotePad.exe")
autoit.ControlClick(WINDOW, "", "[CLASSNN:TTreeView1]", "left", 1, 53, 41)
このバージョンで問題が発生した場合は、すべてを32ビットとしてインストールして再試行してください。
AutoItX.dll
およびAutoItX3_x64.dll
は、デフォルトのインストールの「AutoItX」というディレクトリに含まれています。ヘルプファイルをチェックしてくださいAutoItX.chm
詳細については、そのディレクトリにあります。