如何在屏幕上搜索某个图像

假设桌面有个熟悉的图标如下:



我们该如何用pyautogui找到它呢?

如果是你,你该怎么找呢?

是不是首先得参照上面这个图片,然后在屏幕上逐行扫描,扫到为止。

pyautogui也是类似的:

# 图像识别(一个)

oneLocation = pyautogui.locateOnScreen('weixin.png')

print(oneLocation)



locateOnScreen() 函数返回4个整数的元组,是屏幕上首次发现该图像时左边的 x 坐标、顶边的 y 坐标、宽度以及高度。

如果屏幕上找不到该图像,locateOnScreen() 函数将返回 None。

请注意要成功识别,屏幕上的图像必须与提供的图像完全匹配

即使只差一个像素, locateOn Screen() 函数也会返回None。

如果电脑屏幕上有多个一样的图标,可以使用locateAllOnScreen()函数。

import pyautogui

allLocation = pyautogui.locateAllOnScreen('weixin.png')

print(list(allLocation))

 

 

 

P.S.以下为自动点赞的小例子:

import pyautogui
import time


def zan():
time.sleep(0.5)
xy = pyautogui.locateOnScreen('dianzan.png') # 寻找刚才保存点赞手势图片
center = pyautogui.center(xy) # 寻找图片的中心
pyautogui.click(center)
print('点赞成功!')

count=10#为了防止一直运行下去,点一点数量的赞就结束,自己定义
while True:
if pyautogui.locateOnScreen('dianzan.png'):
zan() # 调用点赞函数
count-=1
else:
pyautogui.scroll(-500) #本页没有图片后,滚动鼠标;
print('没有找到目标,屏幕下滚~')
print("点10个赞结束!")

posted on 2023-12-13 15:21  胖娃  阅读(3015)  评论(0编辑  收藏  举报