pyautogui 在照片中多次搜索照片
pyautogui search for photo many times in photo
虽然在截图中搜索到“aaa.png”照片不止一次,但只找到1张,我希望它能全部找到。我能为它做什么
iml = pyautogui.screenshot(region=(158, 284, 628, 679))
while True:
if pyautogui.locateOnScreen('aaa.png', confidence=0.9, grayscale=True) != None:
for a in pyautogui.locateOnScreen('aaa.png'):
print(a)
输出:
407
302
81
85
...
截图https://i.stack.imgur.com/aHDB6.png
aaa.png https://i.stack.imgur.com/Dow8f.png
您想使用 locateAllOnScreen
查找所有实例。
for pos in pyautogui.locateAllOnScreen('someButton.png')
print(pos)
[更新重新评论]
我不能使用 'screenshot' 函数,但是这个程序:
import pyautogui
res = pyautogui.locateAll('Dow8f.png', 'aHDB6.png',confidence=0.95, grayscale=True)
for a in res:
print(a)
给我 25 次点击,例如:
Box(left=9, top=584, width=81, height=85)
Box(left=115, top=584, width=81, height=85)
Box(left=222, top=584, width=81, height=85)
Box(left=541, top=584, width=81, height=85)
[你不说你用的是哪个版本的pyautogui;如果没有来自 locateOnScreen
的匹配项,最新版本将不会 return 'None',所以也许您使用的是旧版本?]
pyautogui Github 中的 This issue 可能是相关的。默认的 confidence
级别可能过于挑剔,因此请使用我上面显示的值。]
虽然在截图中搜索到“aaa.png”照片不止一次,但只找到1张,我希望它能全部找到。我能为它做什么
iml = pyautogui.screenshot(region=(158, 284, 628, 679))
while True:
if pyautogui.locateOnScreen('aaa.png', confidence=0.9, grayscale=True) != None:
for a in pyautogui.locateOnScreen('aaa.png'):
print(a)
输出:
407
302
81
85
...
截图https://i.stack.imgur.com/aHDB6.png
aaa.png https://i.stack.imgur.com/Dow8f.png
您想使用 locateAllOnScreen
查找所有实例。
for pos in pyautogui.locateAllOnScreen('someButton.png')
print(pos)
[更新重新评论]
我不能使用 'screenshot' 函数,但是这个程序:
import pyautogui
res = pyautogui.locateAll('Dow8f.png', 'aHDB6.png',confidence=0.95, grayscale=True)
for a in res:
print(a)
给我 25 次点击,例如:
Box(left=9, top=584, width=81, height=85)
Box(left=115, top=584, width=81, height=85)
Box(left=222, top=584, width=81, height=85)
Box(left=541, top=584, width=81, height=85)
[你不说你用的是哪个版本的pyautogui;如果没有来自 locateOnScreen
的匹配项,最新版本将不会 return 'None',所以也许您使用的是旧版本?]
This issue 可能是相关的。默认的 confidence
级别可能过于挑剔,因此请使用我上面显示的值。]