PC

AutoItの画像認識へ便利?使い方から作業自動化のコツについて解説

AutoItは、簡単なスクリプトでWindowsの操作を自動化することができるフリーウェアです。

スクリプト?プログラムですよ!?難しそうと思われるかもしれませんが、UiPathという最近RPAでよく出てくるキーワードでも、条件分岐のようなことをやろうと思ったら、プログラミングの基本がわかっていないと何もできないんです。

ですから、そういうことをやりたいなら、AutoItがいいと思います。エクセルの操作やメールの送受信、ブラウザの制御など、たくさんのライブラリが用意されています(しかも、無料!)。無料ですからね。無料ですから。

AutoItについて

AutoIt(オートイット)はWindows用のプログラミング言語である。
AutoItはWindows用プログラムのGUI自動操作機能を主な特徴としている。スクリプトは実行形式にコンパイル可能であり、コンパイルしたものはAutoItインタプリタのインストールされていない環境でも動作する。フリーウェアであり非常に多くのライブラリ、開発ツールが存在する。

ウィキペディアより

インストール方法

AutoIt公式サイトのダウンロードページから、最新版であるv3.3.14.5(2019年11月現在)をダウンロードします。 autoit-v3-setup.exeがダウンロードされるファイルです。
ダウンロードしたsetup.exeを開き、インストールします。
Agreeを押して進みます。
次のステップに進み、通常通りソフトウェアをインストールします。1.

インストールが完了すると、標準インストールでは、C:Program Files(x86)\AutoIt3.Setup.exeというフォルダが作成されます。

一緒にインストール/アップデートする必要があるもの


ここでは、必要なもの、あった方がいいものを紹介します。

SciTE(スクリプトエディタ)
通常のインストールでは、ScriptEditorの機能カット版がインストールされます。そのため、その上にフルバージョンをインストールします。
同じダウンロードページのDownload Editorからダウンロードして、その上にインストールしてください。
初心者の方は、旧バージョンに含まれているAu3Record.exeをお使いください。
最新版には、Windowsでの操作を記録するRecord.exeがありません。
そのため、アーカイブページから旧バージョン3.3.14.0(2016-06-12)のzip版をダウンロードして解凍し、extras/recorder/にインストールされているフォルダの中にrecorderフォルダを入れてください。

最新バージョンのUPXを入れる

こんにちは、最新バージョンのUPXを入れたのですが、Windows Defenderがまだマルウェアとして認識しています。
AutoItの標準圧縮とUPXの圧縮があるので、UPXの圧縮は使わないほうがいいみたいです。
2020年1月中旬までは何の問題もなかったのですが、突然、作成したexeがマルウェアとして認識されてしまいました。筆者は、今はUPX圧縮を使わないことにしています。
AutoItはUPXを使ってexeを圧縮します。常に更新されていますので、公式サイトから最新版をダウンロードし、AutoIt3\Aut2Exe\のupx.exeを上書きしてください。
公式サイト: https://upx.github.io
UPXについての詳細は、wikiをご参照ください。

AutoItで作成されたexeがマルウェアとして認識されていることがWeb上でよく見受けられます。原因は、UPXによる圧縮と、マルウェア作者がAutoItとUPXを使って作成したことによるものです。
詳細は別の記事でご紹介しています。
AutoItのフォルダ構造
それでは、AutoItのフォルダ構造を知っておきましょう。
C:Program Filex (x86)~AutoIt3~の中を見てみましょう。
これはインクルードフォルダです。これは#include<>で指定します。これで本当にいろいろなことができます。
Aut2Exeフォルダです。au3をexe形式に変換して、UPXに圧縮するexeが入っています。
Au3Info.exe:ウィンドウコントロールのクラスやIDなどを調べることができます。4.
スクリプトを書いて実行してみよう
スクリプトを書いて実行してみましょう。以下をtest.au3ファイルとして保存し(SciTEやメモ帳でOK)、実行してみましょう。

;マウスを10,10(左上)から右下に移動させるスクリプト
For $i=0 To 100 Step 1
MouseMove(10+5$i, 10+4$i)
次のステップ
このスクリプトを実行すると、マウスが勝手に動いているのがわかります。
このようにして、マウスを動かすだけでなく、クリックやファイルの印刷、メールやExcel、さらにはブラウザの操作など、人がコンピュータに指示することのほとんどを自動化することができます。

変数の書き方


スクリプトの実行
test.au3 が入っているフォルダをエクスプローラ(Win+E)で開き、ファイルをダブルクリックすると SciTE が起動します。

5.1 SciTE 出力の日本語対応
SciTE は基本的に日本語では文字化けしますし,ConsoleWrite(“Nihongo”)も文字化けします.

メニューの Option->Open User Options File で開いた SciTEUser.properties ファイルの先頭に以下の2行を追加して,プログラムを再起動してください.

コードページ=932
文字 セット=128

プログラムを再起動すると,ConsoleWrite(“Nihongo”)も日本語で出力されるようになります.6.

また、以下のようなアプリケーションを作成することもできます。6.
AutoItで作成したアプリケーションの例です。Webにアクセスして情報を書き取り、その文章を形態素解析サーバに送り、形態素解析結果をExcelに書き取るというものです。