画面上の特定のピクセル値の座標を取得しようとしていますが、結果が得られないようです。私が得るエラーは "autoit.autoit.AutoItError:色が見つかりません"です。autoit.pixel_search戻り値の色が見つかりません
私のコードを確認するには、私が望む色のピクセルをマウスで動かしてください。これは必須ではなく、テストの一部に過ぎませんでした。私は2つのモニターを持っており、私の恐怖は、ピクセル検索で私が望んでいたモニターを区別できないということでした。だから私は基本的な "マウスの移動"をしたかどうかを知るautoitをテストするために。モニター1の画像に移動したので、モニターが正しいことが分かりました。
"autoit.pixel_get_color"が私が望む値を取得できるかどうかをテストしました。(65281)。Windows Infoアプリケーションから提供された16進数ではなく、10進数を使用する必要があるかもしれません。
私は以下のコードでテストしましたが、これはSciTE - light(.au3ファイル)を使用したコードであり、正常に動作します。
$coord = PixelSearch(0, 0, 1434, 899, 0x00FF02)
If Not @error Then
MsgBox(0, "X and Y are:", $coord[0] & "," & $coord[1])
EndIf
私はpyautoguiとピクセルをつかんテストし、最終的に私はそれを行うことができますが、それはのAutoItのように「クリーン」ではありませんので、私は可能であればそれを避けるためにしようとしています。 Autoitには、私に色を示すすてきなウィンドウ情報画面があるので、スクリプトに数字を差し込むのは本当に簡単です。
私は現在Pythonで書いたコードです。
import autoit
import pyautogui
pyautogui.confirm('Press OK to start running script')
autoit.mouse_move(374,608,10) # move mouse to where the color I want is located.
pixelcolor = autoit.pixel_get_color(374,608) #get color of pixel
pixelsearch = autoit.pixel_search(0,0,1434,899,0x00FF02) # search entire screen for color
pixelsearch = autoit.pixel_search(0,0,1434,899,65281) # Tried using the value from the get_color, still same error.
いずれかのアイデアはありますか?
'autoit.mouse_move(374,608,10)'はマウスポインタでピクセルをカバーしますか? –
いいえ、そうではありません。マウスが大きなボックスの中央に移動しているので、ピクセル検索では、カーソルがどこに来るかを調べる前に他の一致するピクセルが見つかるはずです。私もコードをコメントアウトし、安全性についてテストしましたが、それと同じエラーです。 – Thomas
私は 'pyautoit'をインストールして、同じエラーが発生することを確認しました。 –