Как использовать одновременно клавиатуру и контроллер мыши?

Когда я использую import pynput, поскольку кнопка не импортируется, AttributeError: объект «Контроллер» не имеет атрибута «Кнопка»

Однако, когда я импортирую из него, я путаюсь в том, что такое контроллер, потому что они не названы, что мне делать? Как заставить их работать одновременно?

import pynput.mouse    as ms
import pynput.keyboard as kb
import  time
import  stuff



mouse = ms.Controller()
keybord = kb.Controller()


while True:

    time.sleep(3)


    keybord.position = (454, 78)
    keybord.press(Button.left)
    keybord.release(Button.left)

    mouse.press(Key.ctrl)
    mouse.press('a')
    mouse.release('a')
    mouse.release(Key.ctrl)

    mouse.press(Key.ctrl)
    mouse.press('v')
    mouse.release('v')
    mouse.release(Key.ctrl)

    mouse.press(Key.enter)
    mouse.release(Key.enter)

person PurpleMoneys89    schedule 20.07.2020    source источник
comment
Button, по-видимому, является атрибутом pynput.mouse. Поскольку вы импортировали этот подмодуль как ms, вы можете использовать ms.Button для ссылки на этот атрибут. Или вы можете сделать from pynput.mouse import Button и оставить свой код как есть.   -  person jasonharper    schedule 20.07.2020
comment
это не работает, я получаю AttributeError: объект «NoneType» не имеет атрибута «is_dead»   -  person PurpleMoneys89    schedule 20.07.2020
comment
Если мой ответ помог, подумайте о том, чтобы принять его. :)   -  person jizhihaoSAMA    schedule 04.09.2020


Ответы (1)


Некоторые изменения:

  1. Вы не импортировали Key, Button.
  2. Вы используете keyboard и mouse неправильным образом. Вот почему это вызовет ошибку: AttributeError: 'NoneType' object has no attribute 'is_dead'

Этот код работал для меня:

import pynput.mouse as ms
from pynput.keyboard import Key
import pynput.keyboard as kb
from pynput.mouse import Button
import time



mouse = ms.Controller()
keybord = kb.Controller()

while True:
    time.sleep(3)

    mouse.position = (454, 78)
    mouse.press(Button.left)
    mouse.release(Button.left)

    keybord.press(Key.ctrl)
    keybord.press('a')
    keybord.release('a')
    keybord.release(Key.ctrl)

    keybord.press(Key.ctrl)
    keybord.press('v')
    keybord.release('v')
    keybord.release(Key.ctrl)

    keybord.press(Key.enter)
    keybord.release(Key.enter)
person jizhihaoSAMA    schedule 22.07.2020