как использовать python, чтобы получить отображение из окружающей среды - PullRequest
0 голосов
/ 16 апреля 2020

Я хочу быстро определить положение и цвет курсора (менее 0,1 с c)

Я прочитал эту статью и хочу попробовать, что он последний метод (Xlib)

Однако, когда я запускаю os.getenv("DISPLAY"), он возвращает None

Кто-нибудь знает, как это исправить, или предлагает мне новый метод для достижения моей цели?

Система: MacBook Pro, macOS 10.15.4

Ответы [ 2 ]

1 голос
/ 16 апреля 2020

Pyauto gui - хорошая библиотека для GUI операций, в которой есть position (), и я использовал screenshot (), а затем получил цвет заданного пикселя, это то, что я пробовал, вы можете проверить это с помощью приведенного ниже кода ,

Перед go с кодом, установите пакет, используя

python -m pip install pyautogui

Код:

import pyautogui

try:
    while True:
        x, y = pyautogui.position()
        pixelColor = pyautogui.screenshot().getpixel((x, y))
        screenShot = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
        screenShot += ' RGB: (' + str(pixelColor[0]).rjust(3)
        screenShot += ', ' + str(pixelColor[1]).rjust(3)
        screenShot += ', ' + str(pixelColor[2]).rjust(3) + ')'
        print(screenShot)

except KeyboardInterrupt:
    print("\nDone...")
1 голос
/ 16 апреля 2020

Xlib обычно недоступен в macOS. Вы можете использовать библиотеку, такую ​​как pynput или pyautogui, чтобы достичь того, что вы хотите сделать вместо этого.

например, с pynput

from pynput.mouse import Controller

mouse = Controller()
print(mouse.position)  # (x, y) coordinates tuple 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...