posts - 199,  comments - 2,  views - 70384
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

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

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



我们该如何用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   胖娃  阅读(3824)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
历史上的今天:
2016-12-13 LR中的参数化问题
2016-12-13 两个函数:web_reg_save_param 与 web_reg_save_param_ex
点击右上角即可分享
微信分享提示