无法在ubuntu上运行pyautogui

问题描述 投票:0回答:2

我想同时使用 Pyautogui 和键盘模块(使用 Python),但我不能这样做。我也安装了键盘模块和 Pyautogui 模块,但是当我尝试通过 root 运行 Pyautogui 时,我收到此错误(sudo python3)

    raise error.DisplayConnectionError(self.display_name, r.reason)
Xlib.error.DisplayConnectionError: Can't connect to display ":1": b'Authorization required, but no authorization protocol specified\n'

无需root,即可使用。但键盘没有 root 就无法使用。

    raise ImportError('You must be root to use this library on linux.')
ImportError: You must be root to use this library on linux.

我在键盘模块中使用 .is_pressed() 函数。

python pyautogui python-keyboard
2个回答
1
投票

使用root安装

pyautogui

sudo pip install pyautogui

然后运行你的

main.py
:

sudo python main.py

如果上述方法不起作用,那么更好的选择是

pynput
pynput
不需要任何root权限。

pynput
示例:

from pynput import keyboard

def on_press(key):
    if key.char == "a":
        print(f"alphanumeric key {key.char} pressed")

listener = keyboard.Listener(on_press=on_press)

listener.start()

输出:

alphanumeric key a pressed

© www.soinside.com 2019 - 2024. All rights reserved.