не читает изображения

keonlegendary

Участник
Автор темы
5
0
не могу понять почему он не может чекать картинки и выдает ошибку, картинки в .png и путь к папке указан верно
Python:
import keyboard, pyautogui, os

files = os.listdir("C:\PythonScripts\ImageClicker\Buttons")

while keyboard.is_pressed("Esc") == False:

    for f in files:

        picture = "Buttons/" + f

        button = pyautogui.locateOnScreen(picture, confidence = 0.85)

        if button:
            pyautogui.click(button)
 

Вложения

  • Снимок экрана (1968).png
    Снимок экрана (1968).png
    187.4 KB · Просмотры: 31
Последнее редактирование:
Решение
UP

ChatGPT3.5 - Ошибка pyautogui.ImageNotFoundException означает, что pyautogui не может найти изображение на экране с заданной уверенностью (confidence). В этом случае, вероятно, проблема в том, что изображение не распознается программой pyautogui.

nelit.dev

Участник
45
20
не могу понять почему он не может чекать картинки и выдает ошибку, картинки в .png и путь к папке указан верно
Python:
import keyboard, pyautogui, os

files = os.listdir("C:\PythonScripts\ImageClicker\Buttons")

while keyboard.is_pressed("Esc") == False:

    for f in files:

        picture = "Buttons/" + f

        button = pyautogui.locateOnScreen(picture, confidence = 0.85)

        if button:
            pyautogui.click(button)
попробуй переименовать файл с .PNG на .png. с этим проблемы имел когда писал сжимание файлов для сайта
 

keonlegendary

Участник
Автор темы
5
0

keonlegendary

Участник
Автор темы
5
0
ну где ты вызвал поиск самого фото
Python:
 picture = "Buttons/" + f

        button = pyautogui.locateOnScreen(picture, confidence = 0.85)

я пытался тут где то указать много вариков попробывал но все равно ошибка, подскажи как это правильно сделать плз
 

moreveal

Известный
Проверенный
856
535
cd в директорию с папкой Buttons и потом запускай скрипт, уже как просто ImageClicker.py, либо юзай расширение VSC - Python Debugger (можно будет запускать скрипт на ctrl+f5) - тогда поиск будет в нужной тебе директории, сейчас он ведется в C:\Users\пк

еще можешь в самом скрипте сделать, чтобы путь велся к той папке, где скрипт, а не зависел от текущей рабочей директории (места, откуда он был запущен):
Python:
import os
script_dir = os.path.dirname(__file__)

picture = "Buttons/" + f # Так, если ты запустишь старым способом, путь фактически будет вести на C:\Users\пк\Buttons\picture.png
picture = os.path.join(script_dir, "Buttons", f) # А так путь будет такого вида: C:\PythonScripts\ImageClicker\Buttons\picture.png

и старайся юзать os.path для операций с путями файлов, а не конкатенацию обычную
 
Последнее редактирование:

keonlegendary

Участник
Автор темы
5
0
cd в директорию с папкой Buttons и потом запускай скрипт, уже как просто ImageClicker.py, либо юзай расширение VSC - Python Debugger (можно будет запускать скрипт на ctrl+f5) - тогда поиск будет в нужной тебе директории, сейчас он ведется в C:\Users\пк

еще можешь в самом скрипте сделать, чтобы путь велся к той папке, где скрипт, а не зависел от текущей рабочей директории (места, откуда он был запущен):
Python:
import os
script_dir = os.path.dirname(__file__)

picture = "Buttons/" + f # Так, если ты запустишь старым способом, путь фактически будет вести на C:\Users\пк\Buttons\picture.png
picture = os.path.join(script_dir, "Buttons", f) # А так путь будет такого вида: C:\PythonScripts\ImageClicker\Buttons\picture.png

и старайся юзать os.path для операций с путями файлов, а не конкатенацию обычную
cd хз что это, Python debugger попробывал все равно ошибку выдает, так же в самом скрипте сделал чтобы путь велся к папке где скрипт, вот результат.

Python:
import keyboard, pyautogui, os

script_dir = os.path.dirname("C:\PythonScripts\ImageClicker\Buttons")

while keyboard.is_pressed("Esc") == False:

    for f in script_dir:

        picture = os.path.join(script_dir, "Buttons", f)

        button = pyautogui.locateOnScreen(picture, confidence = 0.85)

        if button:
            pyautogui.click(button)
 

Вложения

  • python debugger со старым кодом.PNG
    python debugger со старым кодом.PNG
    60.1 KB · Просмотры: 6
  • с новым кодом.PNG
    с новым кодом.PNG
    89.9 KB · Просмотры: 6

keonlegendary

Участник
Автор темы
5
0
UP

ChatGPT3.5 - Ошибка pyautogui.ImageNotFoundException означает, что pyautogui не может найти изображение на экране с заданной уверенностью (confidence). В этом случае, вероятно, проблема в том, что изображение не распознается программой pyautogui.
 
Последнее редактирование: