Уведомления

Группа в Telegram: @pythonsu

#1 Июль 10, 2018 10:26:46

hvppydvddy
Зарегистрирован: 2015-05-26
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Клик по цвету

Доброго времени суток. Встала необходимость автоматизировать некие процессы, и необходимо реализовать задачу, где средствами питона будет осуществляться клик по определенному пикселю (по цвету). Выглядит это примерно так: я указываю цвет, запускаю программу и если на
экране есть пиксель с таким цветом - курсор перемещается к нему и делается двойной клик ЛКМ. Как-то пару лет назад реализовывал такую хотелку на делфи, но тут можно сказать спортивный интерес реализовать это именно средствами питона. Заранее премного благодарен.

Офлайн

#2 Июль 11, 2018 11:05:13

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Клик по цвету

valueChanged для начала поставте себе задачу, как вы будете искать пиксел. Можно использовать API ОС для этого и перебирать все пикселы, а можно использовать ImageGrab из PIL, делать скриншот и полученое скармливать например numPy и с помощью него искать нужные пикселы. ИМХО через ImageGrab+NumPy будет быстрее чем перебирать по пиксельно. По крайней мере в семрке и выше с вклченным Windows Desktop Composition, GetPixel работает нереально медленно.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#3 Июль 11, 2018 11:12:21

djigit0s
Зарегистрирован: 2018-07-11
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Клик по цвету

может вам поможет pyautogui - там вроде реализованы все нужные вам функции

 import pyautogui
button7location = pyautogui.locateOnScreen('calc7key.png')
button7x, button7y = pyautogui.center(button7location)
pyautogui.click(button7x, button7y)

Отредактировано djigit0s (Июль 11, 2018 11:13:59)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version