


これは、画像認識で秀丸(エディタ)のアイコンにマウスを移動してます。
コマンドは、_ImageSearch(‘hide.png’,1,$x, $y,100)
このコードはこちらに:
メインのコマンドは:
_ImageSearch(“探したい画像”,画像の真中または左上の座標取得,X、Yが入る変数, )
見つかった画像の位置座標がX,Yに戻っていきます。

AutoitはBasic言語のようなスクリプトで、IE,Chrome,Excel,LibreOffice,オンラインゲームなどを自動で動かせるようにできます。
Autoitのサンプルコードなど多数:

ゲームの自動化もできます。ルーレットのあたり数値取得は画像認識使ってます。
なにか簡単で役に立ちそうなコードできたら、メニューに追加しますので見てください。
Autoitでわからないところあれば、コメントください。
可能な限り、記事にしたいと思います。
AutoitとAutoHotkeyどちらがいい
あくまで私の感想ですがAutoHotkeyは小さなものにショートカットキーを割り当てたりするのは早いと思います。
Autoitは計算が得意でないです。
Autoit 本家(海外サイト)と日本語訳の説明サイト
AutoHotkey、UWSCのように簡単に使えるBasic言語に似たスクリプト言語です。初心者にも文法わかりやすいと思います。
- ユーザー関数を使って、Chrome・IEなどのブラウザを操作できます。
- Excelの操作、グラフの作成などもできます。
- GUI(Window)を作り、操作しやすくできます。
- スクリプトをコンパイルしEXE(実行形式)にできます。
- 画像認識もできるの、ゲームの自動化もできます。
すこし難しいことをやりたいときは勉強コストがいりそうです。
大部分の情報が英語サイトです。(英語の勉強も同時にできます!!)
GUI(グラフィック・ユーザー・インターフェイス)=Window画面を作るのも、専用ソフトがあるので簡単にできます。
すばらしい、Autoitマニュアル:日本語訳のサイトです。
こちらのサイト、海外から見れなくなっています。セキュリティの関係かな
無料のVPN使えば見れます。
Autoit インストールの方法
こちらのサイトの少し下に、画像のようなところあります。

赤矢印をクリックしダウンロードして下さい。

自分の好みのフォルダーに入れてください。入れたファイルは後で削除しても構いません。
ダウンしたファイル起動すれば、問題なくインストールできるはずです。
スクリプトの拡張子:.au3で保存する
ファイル名のルール: 名前(好きに付けていい、英語小文字)+ ”. ドット” + 拡張子
xxxx.au3

Autoitのファイルは、テキストエディタで編集し拡張子(au3)で保存すればOKです。
関連付けができていれば、ダブルクリックで起動します。
お決まりの「Hello World」: SAVEの仕方があっているかを確認
MsgBox(“”,””,”Hello World !!”)
好きなエディタで入力し保存、クリクしてみてください。大抵動くはず。
動かないときは、関連付けができてません。

エディタは「vscode」が最高: 色分け・コード補完
Visual Studio CodeはMicrosoftが開発したWindows、Mac, Linuxで動くエディタで無料で使えます。

Visual Studio Codeで「Autoit」の拡張機能をいれるのがいいです。
補完機能、関数の説明も出てきてくれます。(ただし、英語です)
色もつけてくれ見やすいです。

下のリンクをクリックすれば、ファイルをダウンロードできるサイトにゆきます。
ファイル多少重いです。
他のエディタ SciTE / Notepad++
SciTE (Autoitをインストールしたときに付属してきます)

Autoitのダウンしたファイルの中に含まれています。補完はしてくれますが設定変更が分かりづらい。
Notepad++
最初から、Autoit色分けするXml入っています。軽いエディタです。

Autoitのコメント 単一行/複数行 Comment
; セミコロンの後ろコメントになる(一行)
#cs
複数行~~~
#ce
#cs ~~ #ce で囲むと複数行をいっぺんにコメントアウトできます。
Autoitでブラウザ「IE」を操作

Yahoo開くサンプル
#include <IE.au3> $oIE=_IECreate("https://yahoo.com/")
#include <IE.au3>は、IEを操作するのに必要なファイルです。
◎ 2つのURLを開く
#include <IE.au3> $oIE=_IECreate("https://yahoo.com/") _IECreate("http://www.yahoo.co.jp/")
_IECreate(URL)だけで、表示してくれます。ただし、複数の場合Windowが新しくなります。
YahooアメリカとYahoo(日本)が別窓で開きます。

◎ 同じWindowで表示したい時
#include <IE.au3> $oIE=_IECreate("https://ph.yahoo.com/") _IENavigate($oIE,"http://www.yahoo.co.jp/")
これで、Yahooを閉じ日本のYahooを開きます。
Autoitでブラウザ「Chrome」を操作
Run ("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe https://yahoo.com")
サンプル:notepadを起動し、文字貼り付け、単語検索
MsgBox(0, "Tutorial", "3秒後にNotepad起動",3) ;3秒で自動で起動 Run("C:\WINDOWS\system32\notepad.exe") WinWaitActive("[CLASS:Notepad]", "") Send("日本へ帰ろう!!{Enter}") ControlSend("[CLASS:Notepad]", "", "[CLASS:Edit; INSTANCE:1]", "This is some text") Send("^f") ;CTRL+F 検索 Send("some") ;上に検索を押す ControlClick("[TITLE:Find;Class:#32770]", "", "[CLASS:Button; INSTANCE:4]") ; Send("{Enter}")
こんな感じになります

MsgBox :一定時間後動くように
[] : 角括弧野中は、オプションなので指定しなくてもいい。
timeout : 時間(単位は秒)、時間経過するとMsgBoxを閉じ、次のスクリプトが実行されます。
必須項目入れないとエラーになります。最低3つ必要です。
MsgBox(0,"SAM","sam こつこつ!")

Line 1 (File “D:\studyData\autoit\test\test.au3”):
MsgBox(0,”sam こつこつ!”)
^ ERROR
Error: Incorrect number of parameters in function call. (パラメータの数が正しくない)
エラーを無くすには:
パラメータ ””を2番目に入れる
文字列の連結は「&」
MsgBox(0,"","#" & "F0F0F0")

notepadに文字を入れる(Send)
Send(“日本へ帰ろう!!\n”)
秀丸に、文字列を送り改行しようと思いましたがダメでした。
日本へ帰ろう!!\n
そのまま表示されてしまいました。
ヘルプを読んでわかりました。
Send(“日本へ帰ろう!!{Enter}”)
改行は、{Enter}です。{}で囲む。
;;notepad++に文字列を送る AutoItSetOption("WinTitleMatchMode",2) ;; 部分一致 WinActivate("Notepad++") ;; 秀丸をActiveに send("sam go back Japan") ;; 文字列を送る
notepad++の先頭に文字を入れる
AutoItSetOption("WinTitleMatchMode",2) ;;部分一致 WinActivate("Notepad++") ;;notpad++をアクティブに Send("^{HOME}") ;;ファイルの先頭に Send("Sam 日本帰ろう{Enter}")
Autoitで画像認識
トップの画像(秀丸アイコン)認識のコードです。
#include <ImageSearch.au3> HotKeySet("p", "checkForImage") global $y = 0, $x = 0 Func checkForImage() Local $search = _ImageSearch('hide.png',1,$x, $y,100) If $search = 1 Then MouseMove($x, $y, 10) EndIf EndFunc while 1 sleep(200) WEnd
_ImageSearchはモニター(ディスクトップ)のすべてを探します。
_ImageSearchArea(“red.png”,1,$xR,$yR,$xR+50,$yR+50,$x, $y, 150)
_画像認識の別記事もどうぞ:
コメント