问题描述
我正在尝试构建一个仅点击某些颜色的小型机器人。我相信pyautogui.displayMousePosition()
应该显示鼠标的位置以及鼠标所在像素的RGB值。相反,我只看到位置值(在屏幕截图中看到)。这可能是MacOS的问题吗?
No RGB values being displayed on python console - screenshot
解决方法
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)