Мой бот не нажимает на синий значок, который появляется на экранеPython

Программы на Python
Anonymous
Мой бот не нажимает на синий значок, который появляется на экране

Сообщение Anonymous »

У меня проблема с моим ботом, он должен выбрать приложение и в приложении, когда я что-то делаю, на экране появляется маленький синий значок, затем мой бот должен щелкнуть значок, но есть проблема, он не нажимает на значок и я не знаю почему. Значок маленький.
Это мой код:

Код: Выделить всё

  import pyautogui
import cv2
import numpy as np
import time
import mss
import pygetwindow as gw

template_path = 'blue_icon.png'
app_title = "XXX"  # Podaj dokładną nazwę okna aplikacji

def find_and_click_blue_icon():
# Pobierz okno aplikacji
app_window = gw.getWindowsWithTitle(app_title)

if not app_window:
print(f'Nie znaleziono aplikacji o nazwie: {app_title}')
return

app_window = app_window[0]  # Zakładamy, że okno jest pierwsze na liście

# Przełącz na to okno
app_window.activate()

# Współrzędne okna aplikacji
left, top, width, height = app_window.left, app_window.top, app_window.width, app_window.height

# Zrzut ekranu z obszaru okna aplikacji
with mss.mss() as sct:
monitor = {"top": top, "left": left, "width": width, "height": height}
screenshot = sct.grab(monitor)
screenshot = np.array(screenshot)
screenshot = cv2.cvtColor(screenshot, cv2.COLOR_BGRA2BGR)

# Wczytanie obrazu niebieskiego znaczka
template = cv2.imread(template_path, cv2.IMREAD_COLOR)

# Dopasowanie wzorca
result = cv2.matchTemplate(screenshot, template, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)

# Kliknięcie, jeśli dopasowanie jest wysokie
if max_val > 0.2:
icon_x, icon_y = max_loc
icon_center_x = left + icon_x + template.shape[1] // 2  # Dodaj lewą krawędź okna
icon_center_y = top + icon_y + template.shape[0] // 2  # Dodaj górną krawędź okna
pyautogui.click(icon_center_x, icon_center_y)

# Główna pętla programu
while True:
find_and_click_blue_icon()
time.sleep(0.4)
Нажатие синего значка в приложении

Подробнее здесь: https://stackoverflow.com/questions/790 ... the-screen

Вернуться в «Python»