Sikulix : どう使うPython、初心者がいろいろ試す。(2)

SikuliX 使い方2

SikuliXイマイチ使い方がよくわかりません。色々なサイト・英語サイトを見ていろいろ試しています。
私は、小さなTOOLが簡単に作れるAutoHotkey、Autoitが好きです。

SikuliXで小さなTOOLは、不向きだと思います。コマンドラインで実行すると5~7秒起動するまでに時間かかります。

SikuliXの本家英語サイト(ダウンロード先):

以前のSikuliの記事(1):

AutoHotkeyのおすすめ記事:

Autoitのおすすめ記事:

マウスが上にないと、隠れてしまう窓の画像を切り取る

簡単な動画説明

SikuliXをショートカットキーで動かす

pop_menu 画像取得できない

ポップアップのメニューだとSikuliXをアクティブにすると消えてしまうので、目標画像が取得できません。

そこで使うのがショートカットキーです。

CTRL+Shift+2 デフォルトの場合  押しづらい!

ショートカットキーを簡単に変更する

「ファイル」>「環境設定」とクリック

赤矢印先の中にカーソルを入れ、好きなキーを押せば変わります。

App.open(“フルパス+起動ファイル名”)

App.open("G:\App\notepad_plus\notepad++.exe")

これだと、エクスプローラーが開くだけです。(パスの区切り「\」1つ)\

パス区切り 「\\」2つにすると正しく動く \

App.open("G:\\App\\notepad_plus\\notepad++.exe")

簡単に「¥」を「\\」する方法:

ToMoClipというフリーソフトを使えばできます。

マクロを使い書き換えすればOK
やりかたは、別記事で

SikuliでChromeを操作する  App.open( )

Chromeを最初から、起動する

#App.open("C:\Program Files\Google\Chrome\Application\chrome.exe")
#App.open("C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe")

App.open('"C:\Program Files\Google\Chrome\Application\chrome.exe"'  "https://www.yahoo.co.jp/")
#App.open('"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe"'  "https://www.yahoo.co.jp/")

App.open(‘” ~~.exe”‘ “引数”) ‘ ‘ アポストロフィで囲む

開いているChromeを操作す .focus( )

myApp = App("Chrome")  #名前 同じものあると動かない
App.focus("Chrome")
#type("t",Key.CTRL)  #新規TAB
type("n ",Key.CTRL) #新規Window
paste("https://www.yahoo.co.jp/")
type(Key.ENTER)
#wait(1)

type(“送るキー”, 同時におスキー) Key.CTRL 大文字

動画で説明:

python2.7 subprocess.call( )でURLを開く

import subprocess

myApp = "C:\Program Files\Google\Chrome\Application\chrome.exe "

myOption = "--new-window" 
#myOption = ""

subprocess.call([myApp, myOption, "https://www.yahoo.co.jp/"])

AR_CADの簡単図形をSikuliXで描いてみる

click("1612935483066.png") # 長方形のアイコン
click("1612935513536.png") # 数値入力欄
wait(1)
type(Key.BACKSPACE)
wait(1)
type("25"+Key.ENTER)
wait(1)
type("30"+Key.ENTER)
wait(1)
type("150"+Key.ENTER)
wait(1)
type("135"+Key.ENTER)

使うのは、画像click()、type()だけです。

AR_CADの使い方はこちら:

データをCSVから読む

import csv
csvFile="F:\\studyData\\sikuli\\AR_CAD.sikuli\\ar_cad.csv"  #\ダブル
csvData=[0,0,0,0]
f=open(csvFile,'rb')

Settings.MoveMouseDelay = 0.1

for row in csv.reader(f):
    cnt=0
    for data in row:
        csvData[cnt] = data
        cnt +=1
    click("1612935483066.png")
    click("1613046921670.png")
    wait(0.3)
    type(Key.BACKSPACE)
    wait(0.3)
    type(csvData[0]+Key.ENTER)
    wait(0.3)
    type(csvData[1]+Key.ENTER)
    wait(0.3)
    type(csvData[2]+Key.ENTER)
    wait(0.3)
    type(csvData[3]+Key.ENTER)

import csv #これが必要
ファイルのパスは\\  2個ダブルにしないとダメ
wait() #0.2 少数でもいいみたい

regionの使い方

regionA=範囲画像

regionA.click(画像)

これで探す範囲を狭めることができるようです。動かした感じ早くなっていない。

コメント

タイトルとURLをコピーしました