用pyautogui.locateOnScreen实现精准自动识别图片的功能

用pyautogui.locateOnScreen实现精准自动识别图片的功能_第1张图片
打开CSDN首页,我们要识别图中的的赞,并点击。
首先我们写代码截取带赞的手势图片,代码如下:

from PIL import Image
import pyautogui
im=pyautogui.screenshot()#截取整个屏幕
om=im.crop((284,416,302,438))#根据截取的屏幕仅截取“带赞的手势图片”,可以用pyautogui.mouseInfo()获取图片的位置(284,416,302,438)
om.save("dianzan.png")#将图片保存供pyautogui.locateOnScreen()使用

获取供pyautogui.locateOnScreen()识别的图像后,开始写代码识别图像,如下:

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个赞结束!")

运行后会识别图片进行点赞
用pyautogui.locateOnScreen实现精准自动识别图片的功能_第2张图片
代码输出如下:
用pyautogui.locateOnScreen实现精准自动识别图片的功能_第3张图片

参考文献:Python基础之pyautogui模块(详细总结鼠标键盘操作)

你可能感兴趣的:(Python实例,python)