Как заставить клик pyautogui работать на Mac?

Проблема с методом щелчка pyautogui: я запускаю скрипт из Spyder, если я нажимаю что-либо в окне Spyder, щелчок работает нормально.

Если я выполняю скрипт, чтобы открыть Outlook, а затем нажимаю на что-либо, щелчка не происходит. Хотя я могу правильно использовать функцию «moveTo».

Вещи, которые я пробовал, как было предложено при поиске в Google:

pyautogui.click()
pyautogui.click()

ОС: mac os высокая сьерра

Примечание. Чтобы получить доступ к любому расположенному изображению, мне нужно указать координаты/2, так как это дисплей Retina 2x.

Любое обходное решение или любая помощь будут высоко оценены.


person Shreyash Sharma    schedule 23.09.2019    source источник


Ответы (4)


Всем, кто может столкнуться с той же проблемой на Mac, я смог заставить ее работать, используя обходной путь, использующий библиотеку pynput.

Код:

import pyautogui
from pynput.mouse import Button, Controller

mouse = Controller()
pyautogui.moveTo(x,y)
mouse.click(Button.left)
person Shreyash Sharma    schedule 24.09.2019

OS X Mojave, у меня работает следующее:

    pyautogui.moveTo(pos)
    pyautogui.dragTo(button='left')

pyautogui.click() выдает ошибку атрибута, но вместо этого работает pyautogui.dragTo().

person eyesurge    schedule 31.03.2020

Я только что узнал, что в настройках Mac я не проверял подсказку перед PyCharm в настройках конфиденциальности. После этого моя функция pyautogui.click() работает.

person Chunlin Li    schedule 22.09.2020

Я также столкнулся с той же проблемой, вот что я пробовал:

Просто добавьте еще одну строку pyautogui.dragTo(), чтобы сосредоточиться на этой конкретной выделенной области:

pyautogui.moveTo(990,28)
pyautogui.dragTo() 
pyautogui.click()
person Aaditya Ura    schedule 22.03.2020