2017-04-24 18 views
2

Sikulisikuli如何在同一时间

我需要检查是否存在我要点击图像,图像的特定区域会出现随机,我写的代码检查但检查多个图像,它需要10秒钟来检查该地区,无论如何我可以缩短时间。

Settings.MinSimilarity = 0.95 
Reg = Region(582,404,214,187) 
img = capture(Reg) 
search = True 
Settings.MoveMouseDelay = 0 
while search : 
    if Reg.exists("12.png") or Reg.exists("13.png") or Reg.exists("14.png")or Reg.exists("15.png")or Reg.exists("28.png"): 
     click(Reg.getLastMatch()) 
     search = False 
+0

看看这里:http://eugenesautomation.blogspot.com.au/2015/01/optimizing-pattern-matching-using-sikuli_21.html –

回答

0

您可以将0参数添加到exists()电话。

所以不是

if Reg.exists("12.png") or Reg.exists("13.png") or Reg.exists("14.png")or Reg.exists("15.png")or Reg.exists("28.png"): 

你必须:

if Reg.exists("12.png",0) or Reg.exists("13.png",0) or Reg.exists("14.png",0)or Reg.exists("15.png",0)or Reg.exists("28.png",0): 

this,零参数意味着

0作为第二个参数存在的力量,那只执行一次搜索并立即返回结果。它不会等待标准的3秒,所以它非常灵敏。

该区域越小,速度越快。