微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PyAutoGui - 检测像素颜色

如何解决PyAutoGui - 检测像素颜色

晚上好,

我想创建一个脚本,在我的屏幕上制作某个区域的屏幕截图。这是一个有很多动作的网站,我想测试一下。 如果屏幕截图中的像素为白色 (255,255,255),则它应该执行某些操作,但首先要打破循环。如果不是白色,则应重新截图,直到像素变为白色。

这是我制作的脚本:

import pyautogui
from PIL import Image
import time

current = pyautogui.screenshot(region=(949,502,10,5))
current.save("./current.png")

def rgb_of_pixel(img_path,x,y):
im = Image.open(img_path).convert('RGB')
r,g,b = im.getpixel((x,y))
a = (r,b)
return a


img = "./current.png"
print(rgb_of_pixel(img,1,1))
a = rgb_of_pixel(img,1)

while True:

if a == (255,255):
    print('It is white!')
    break

else:

    print(rgb_of_pixel(img,1))
    last = pyautogui.screenshot(region=(949,5))
    last.save("./current.png")

    time.sleep(0.5)

如果在我启动脚本时像素已经是白色的,它就可以工作。但是如果像素在运行之间发生变化,它就不起作用。控制台打印出最新的颜色,但不会中断循环。我做错了什么?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。