pyautogui.pixel从实际位置的左上角拾取颜色

时间:2017-04-01 20:07:08

标签: python-3.x pyautogui

虽然是真的:  X = pyautogui.position()  打印(X + pyautogui.pixel(X [0],X [1]))

并且程序正在拾取实际位于我光标左上方的颜色......

我正在使用python 3.6,windows 10,放大率为125%。这是其中一个原因吗?

2 个答案:

答案 0 :(得分:1)

仍然没有得分足以发表评论,所以这是“回答”中的评论:

通常用鼠标选择颜色不会在屏幕上显示鼠标指针的颜色,而是在光标下方的屏幕颜色。 在我的盒子(Linux Mint)代码:

import pyautogui
while True: 
    posXY = pyautogui.position() 
    print(posXY, pyautogui.pixel(posXY[0], posXY[1]) )
    if posXY[0] == 0:
        break

提供应有的功能 - 鼠标指针下方的颜色。 注意无限循环中的“中断”。这允许您通过将鼠标移动到屏幕的左边缘来停止循环:)

答案 1 :(得分:0)

我的设置与您的设置相同(但Python 3.7),并且遇到了同样的问题。

为什么会发生?有时我会从笔记本电脑上连接和断开外接显示器。每次都会导致某些缩放问题。因此,我尝试在连接了外部监视器的情况下重新启动计算机,直到运行此脚本后才断开连接。它像魅力一样运作。顺便说一句,我也尝试过重新启动Windows资源管理器,但这不能解决问题。

tldr; 重新启动PC,并且自重新启动以来请勿修改显示配置