如何使用PyAutoGUI检测RGB值

2024-04-18 23:20:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试建立一个只点击特定颜色的小机器人。我认为pyautogui.displayMousePosition()应该显示鼠标的位置以及鼠标所在像素的RGB值。相反,我只看到位置值(如屏幕截图所示)。这可能是MacOS的问题吗

No RGB values being displayed on python console - screenshot

我也很想知道是否有其他方法可以解决这个问题


Tags: no屏幕颜色on机器人macosrgb像素
2条回答

displayMousePosition()是一个错误的函数,除了验证库是否正常工作之外,它几乎可以用于任何事情。它不返回任何值,它所做的只是将信息打印到控制台。我强烈建议浏览pyautogui's documentation以了解有关该库提供的功能的更多信息

假设您知道屏幕的x和y坐标,您希望获得屏幕的颜色,那么您需要截屏并在适当的位置检查颜色值

im = pyautogui.screenshot()
px = im.getpixel((x, y))

有一个包装器,可以让您从坐标对中获取像素信息,您也可以使用它

px = pyautogui.pixel((x, y))

不知道为什么,但我在Reddit上发现了这个:

确保在.py文件中包含以下代码:

import sys 
sys.platform = '_'

这对我来说非常有效:
Python 3.9.1
PyAutoGUI==0.9.52
MacOS 11.2.3(20D91)

相关问题 更多 >