HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 07.12.2024, 20:59
copypaste_scripter
Познавший АНТИЧАТ
Регистрация: 03.04.2020
Сообщений: 1,437
С нами: 3217034

Репутация: 138


По умолчанию

крч сразу к делу

Python:





Код:
import
time
from
pynput
.
mouse
import
Button
,
Controller
from
pynput
.
keyboard
import
Key
,
Listener

mouse
=
Controller
(
)
from
myvars
import
*
meow
=
[
[
1750
,
50
,
1
]
]
woof
=
[
#[x coord, y coord, var]
[
100
,
500
,
apple
]
# в файлу откуда берется этот apple указан что он равен 4
]
def
on_press
(
key
)
:
try
:
if
key
==
Key
.
f4
:
for
kitties
in
meow
:
mouse
.
position
=
(
kitties
[
0
]
,
kitties
[
1
]
)
time
.
sleep
(
0.2
)
mouse
.
click
(
Button
.
left
,
kitties
[
2
]
)
time
.
sleep
(
0.2
)
elif
key
==
Key
.
f5
:
for
puppies
in
woof
:
mouse
.
position
=
(
puppies
[
0
]
,
puppies
[
1
]
)
time
.
sleep
(
0.2
)
mouse
.
click
(
Button
.
left
,
puppies
[
2
]
)
time
.
sleep
(
0.2
)
except
AttributeError
:
return
False
with
Listener
(
on_press
=
on_press
)
as
listener
:
listener
.
join
(
)


вот короче как я могу сделать чтобы при проходе по таблицу "woof" при значении "apple" 4 кликнул по этому "домофону" на "Е". (там учтен что числа идут от 0, а не с 1)

типо расстояние между кнопками домофона 150 пикселей. я понял что надо

XcoordA + apple*150

YcoordA + apple*150

но из за неровной расположении кнопок чет не получается + мои мозг и iq не хватает на такое (НАДО БЫЛО МАТЕМАТИКУ УЧИТЬ ЛУЧШЕ) или выпить анти-склерозные таблетки

я бы с радостью выучил но вся программирование не интересно + нет на столько сил и возможности (сдвг)

а про эту тему я не знал как гуглить/спросить у чат жопате



жду ваших слов
 
Ответить с цитированием

  #2  
Старый 08.12.2024, 00:44
copypaste_scripter
Познавший АНТИЧАТ
Регистрация: 03.04.2020
Сообщений: 1,437
С нами: 3217034

Репутация: 138


По умолчанию

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

  #3  
Старый 08.12.2024, 00:58
Ну погоди!
Участник форума
Регистрация: 23.01.2022
Сообщений: 240
С нами: 2267023

Репутация: 48
По умолчанию

Не сильно понял твоих мыслей, закинув промт в ChatGPT, получил следующее:

Код:





Код:
import time
from pynput.mouse import Button, Controller
from pynput.keyboard import Key, Listener

mouse = Controller()

# Базовые координаты (начало домофона)
XcoordA = 100  # Базовый X
YcoordA = 500  # Базовый Y

# Расстояния между кнопками
x_offset = 150  # Горизонтальное расстояние
y_offset = 150  # Вертикальное расстояние

# Таблица с данными
woof = [
    # [x coord, y coord, var]
    [XcoordA, YcoordA, 4]  # `4` здесь — значение apple
]

def on_press(key):
    try:
        if key == Key.f4:
            # Логика для "meow" остаётся
            for kitties in meow:
                mouse.position = (kitties[0], kitties[1])
                time.sleep(0.2)
                mouse.click(Button.left, kitties[2])
                time.sleep(0.2)

        elif key == Key.f5:
            for puppies in woof:
                # Берём координаты из таблицы
                base_x, base_y, apple = puppies

                # Рассчитываем новые координаты
                new_x = base_x + apple * x_offset
                new_y = base_y + apple * y_offset

                # Кликаем
                mouse.position = (new_x, new_y)
                time.sleep(0.2)
                mouse.click(Button.left, 1)  # 1 клик
                time.sleep(0.2)

    except AttributeError:
        return False

with Listener(on_press=on_press) as listener:
    listener.join()


Распиши подробнее, что надо
 
Ответить с цитированием

  #4  
Старый 09.12.2024, 13:02
copypaste_scripter
Познавший АНТИЧАТ
Регистрация: 03.04.2020
Сообщений: 1,437
С нами: 3217034

Репутация: 138


По умолчанию

Цитата:
Сообщение от Ну погоди!  

Распиши подробнее, что надо
этот домофон в игре. надо сделать так, что если значение переменной 0 то нажимался А, если 1 то Б и т.д.
 
Ответить с цитированием

  #5  
Старый 09.12.2024, 21:49
0Z0SK0
Познающий
Регистрация: 14.02.2023
Сообщений: 41
С нами: 1709244

Репутация: 13
По умолчанию

https://pypi.org/project/easyocr/
 
Ответить с цитированием

  #6  
Старый 09.12.2024, 21:51
copypaste_scripter
Познавший АНТИЧАТ
Регистрация: 03.04.2020
Сообщений: 1,437
С нами: 3217034

Репутация: 138


По умолчанию

Цитата:
Сообщение от 0Z0SK0  

https://pypi.org/project/easyocr/
пасиб но такое не поможет. надо именно клик по координатам
 
Ответить с цитированием

  #7  
Старый 09.12.2024, 21:52
0Z0SK0
Познающий
Регистрация: 14.02.2023
Сообщений: 41
С нами: 1709244

Репутация: 13
По умолчанию

Цитата:
Сообщение от copypaste_scripter  

пасиб но такое не поможет. надо именно клик по координатам
Так сделай распознавание текста по экрану, и кликай по координатам

Python:





Код:
import
easyocr
import
cv2
import
numpy
as
np
import
pyautogui

reader
=
easyocr
.
Reader
(
[
'en'
]
)
while
True
:
screenshot
=
pyautogui
.
screenshot
(
)
screenshot
=
cv2
.
cvtColor
(
np
.
array
(
screenshot
)
,
cv2
.
COLOR_RGB2BGR
)
results
=
reader
.
readtext
(
screenshot
)
for
(
bbox
,
text
,
prob
)
in
results
:
text
=
text
.
strip
(
)
.
upper
(
)
if
text
==
"A"
:
print
(
0
)
elif
text
==
"B"
:
print
(
1
)
 
Ответить с цитированием

  #8  
Старый 09.12.2024, 21:55
copypaste_scripter
Познавший АНТИЧАТ
Регистрация: 03.04.2020
Сообщений: 1,437
С нами: 3217034

Репутация: 138


По умолчанию

Цитата:
Сообщение от 0Z0SK0  

Так сделай распознавание текста по экрану, и кликай по координатам
дело в том, что там не текст, там картинки
 
Ответить с цитированием

  #9  
Старый 09.12.2024, 21:56
0Z0SK0
Познающий
Регистрация: 14.02.2023
Сообщений: 41
С нами: 1709244

Репутация: 13
По умолчанию

Цитата:
Сообщение от copypaste_scripter  

дело в том, что там не текст, там картинки
Скинь скриншот хотя бы что там вообще

Цитата:
Сообщение от copypaste_scripter  

дело в том, что там не текст, там картинки
Python:





Код:
import
cv2
import
numpy
as
np
import
pyautogui

pattern_image
=
cv2
.
imread
(
'pattern.png'
)
# путь к картинке кнопки
while
True
:
screenshot
=
pyautogui
.
screenshot
(
)
screenshot
=
cv2
.
cvtColor
(
np
.
array
(
screenshot
)
,
cv2
.
COLOR_RGB2BGR
)
result
=
cv2
.
matchTemplate
(
screenshot
,
pattern_image
,
cv2
.
TM_CCOEFF_NORMED
)
if
np
.
any
(
result
>=
0.8
)
:
print
(
"founded"
)
 
Ответить с цитированием

  #10  
Старый 09.12.2024, 22:01
copypaste_scripter
Познавший АНТИЧАТ
Регистрация: 03.04.2020
Сообщений: 1,437
С нами: 3217034

Репутация: 138


По умолчанию

Цитата:
Сообщение от 0Z0SK0  

Скинь скриншот хотя бы что там вообще

Python:





Код:
import
cv2
import
numpy
as
np
import
pyautogui
import
time

pattern_image
=
cv2
.
imread
(
'pattern.png'
)
# путь к картинке кнопки
while
True
:
screenshot
=
pyautogui
.
screenshot
(
)
screenshot
=
cv2
.
cvtColor
(
np
.
array
(
screenshot
)
,
cv2
.
COLOR_RGB2BGR
)
result
=
cv2
.
matchTemplate
(
screenshot
,
pattern_image
,
cv2
.
TM_CCOEFF_NORMED
)
if
np
.
any
(
result
>=
0.8
)
:
print
(
"founded"
)

спасибо, но это решает данную проблему только. в дальнейшем придется еще искать выход. лучше сразу щас. как то надо по координатам кликать без найденной картинки
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.