 |
|

09.12.2023, 04:53
|
|
Постоянный
Регистрация: 10.10.2018
Сообщений: 443
С нами:
3995744
Репутация:
83
|
|
Ща сдохну, сижу туплю как нубло, у меня есть картинка, например возьмём калькулятор, там есть цифры, к примеру возьмём это:

, мне нужно сделать, чтоб когда эта картинка находится на экране в определённой области, с помощью модуля keyboard нажималась цифра, к примеру 8, НО, если в области поиска будет кнопка, не 8, а НАПРИМЕР

, то уже с помощью keyboardнажалась другая кнопка, например "Б".
|
|
|

26.12.2023, 19:50
|
|
Участник форума
Регистрация: 31.12.2022
Сообщений: 201
С нами:
1774087
Репутация:
33
|
|
это ?
test.py:
Код:
import
cv2
import
pyautogui
import
numpy
as
np
import
time
# Загрузка изображений
img_vosem
=
cv2
.
imread
(
'vosem.png'
,
0
)
img_dva
=
cv2
.
imread
(
'dva.png'
,
0
)
def
locate_image
(
template
,
threshold
=
0.8
)
:
screenshot
=
pyautogui
.
screenshot
(
)
screenshot
=
np
.
array
(
screenshot
)
screenshot
=
cv2
.
cvtColor
(
screenshot
,
cv2
.
COLOR_RGB2BGR
)
screenshot_gray
=
cv2
.
cvtColor
(
screenshot
,
cv2
.
COLOR_BGR2GRAY
)
result
=
cv2
.
matchTemplate
(
screenshot_gray
,
template
,
cv2
.
TM_CCOEFF_NORMED
)
min_val
,
max_val
,
min_loc
,
max_loc
=
cv2
.
minMaxLoc
(
result
)
if
max_val
>=
threshold
:
return
(
max_loc
[
0
]
,
max_loc
[
1
]
)
else
:
return
None
while
True
:
vosem_loc
=
locate_image
(
img_vosem
)
if
vosem_loc
:
print
(
"Нашел 8. Корды:"
,
vosem_loc
)
time
.
sleep
(
1
)
pyautogui
.
press
(
'8'
)
dva_loc
=
locate_image
(
img_dva
)
if
dva_loc
:
print
(
"Нашел 2. Корды:"
,
dva_loc
)
time
.
sleep
(
1
)
pyautogui
.
press
(
'2'
)
|
|
|

30.12.2023, 20:28
|
|
Участник форума
Регистрация: 31.12.2022
Сообщений: 201
С нами:
1774087
Репутация:
33
|
|
так то, или все-таки я тебя неправильно понял ?
|
|
|

30.12.2023, 21:08
|
|
Постоянный
Регистрация: 10.10.2018
Сообщений: 443
С нами:
3995744
Репутация:
83
|
|
Сообщение от teensik
так то, или все-таки я тебя неправильно понял ?
Та я сам уже разобрался, но спсик.)
Сообщение от teensik
так то, или все-таки я тебя неправильно понял ?
Сделал по другому.
|
|
|

30.12.2023, 21:33
|
|
Постоянный
Регистрация: 27.05.2019
Сообщений: 342
С нами:
3666630
Репутация:
83
|
|
Сообщение от teensik
это ?
test.py:
Код:
import
cv2
import
pyautogui
import
numpy
as
np
import
time
# Загрузка изображений
img_vosem
=
cv2
.
imread
(
'vosem.png'
,
0
)
img_dva
=
cv2
.
imread
(
'dva.png'
,
0
)
def
locate_image
(
template
,
threshold
=
0.8
)
:
screenshot
=
pyautogui
.
screenshot
(
)
screenshot
=
np
.
array
(
screenshot
)
screenshot
=
cv2
.
cvtColor
(
screenshot
,
cv2
.
COLOR_RGB2BGR
)
screenshot_gray
=
cv2
.
cvtColor
(
screenshot
,
cv2
.
COLOR_BGR2GRAY
)
result
=
cv2
.
matchTemplate
(
screenshot_gray
,
template
,
cv2
.
TM_CCOEFF_NORMED
)
min_val
,
max_val
,
min_loc
,
max_loc
=
cv2
.
minMaxLoc
(
result
)
if
max_val
>=
threshold
:
return
(
max_loc
[
0
]
,
max_loc
[
1
]
)
else
:
return
None
while
True
:
vosem_loc
=
locate_image
(
img_vosem
)
if
vosem_loc
:
print
(
"Нашел 8. Корды:"
,
vosem_loc
)
time
.
sleep
(
1
)
pyautogui
.
press
(
'8'
)
dva_loc
=
locate_image
(
img_dva
)
if
dva_loc
:
print
(
"Нашел 2. Корды:"
,
dva_loc
)
time
.
sleep
(
1
)
pyautogui
.
press
(
'2'
)
А че там в pygui
- скриншотишь изображение
- вставляешь ссылку
пример:

|
|
|

31.12.2023, 07:44
|
|
Участник форума
Регистрация: 31.12.2022
Сообщений: 201
С нами:
1774087
Репутация:
33
|
|
Сообщение от Anarch
А че там в pygui
- скриншотишь изображение
- вставляешь ссылку
пример:
какая ссылка
|
|
|

31.12.2023, 20:03
|
|
Постоянный
Регистрация: 27.05.2019
Сообщений: 342
С нами:
3666630
Репутация:
83
|
|
Сообщение от teensik
какая ссылка

|
|
|

31.12.2023, 23:08
|
|
Постоянный
Регистрация: 10.10.2018
Сообщений: 443
С нами:
3995744
Репутация:
83
|
|
Сообщение от Anarch
А че там в pygui
- скриншотишь изображение
- вставляешь ссылку
пример:
Дополню, что нужно использовать try except, чтоб ошибку не выдавало.
|
|
|

01.01.2024, 23:31
|
|
Участник форума
Регистрация: 31.12.2022
Сообщений: 201
С нами:
1774087
Репутация:
33
|
|
я тебя не понял честно говоря
|
|
|

02.01.2024, 16:33
|
|
Познающий
Регистрация: 02.03.2023
Сообщений: 50
С нами:
1685939
Репутация:
13
|
|
Сообщение от teensik
я тебя не понял честно говоря
а как реализовать что бы после нажатия на кнопку, отправлялось сообщение в тг?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|