Не понимаю ошибки чтения неправильных разрешений - PullRequest
0 голосов
/ 06 января 2020

Я пытаюсь создать бота для игры, использующей pyauto gui, однако при выполнении этой строки кода:

    if py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\Poison.png")!=None:

Возвращает эту ошибку:

OSError: Failed to read C:\Users\molta\Documents\Pythons\Poison.png because file is missing, has improper permissions, or is an unsupported or invalid format

Читая эту ошибку, я проверил, что на изображениях указан правильный тип файла и указан правильный путь к файлу. Кроме того, я также проверил, что png является поддерживаемым типом файла для библиотеки pyauto gui. Поэтому единственная проблема, которую я вижу, состоит в том, что у нее неправильные разрешения. Мой вопрос, поэтому, если это так, и как я могу исправить это тогда или как я мог проверить это сам

все указатели оценены!

Если это поможет, вот мой полный код и после эта полная ошибка

import pyautogui as py
import winsound
from time import sleep as sl
Hello=[]
turn=0
while True:
    if py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\Poison.png")!=None:
        if turn==0:
            pyautogui.typewrite(["a","f","s"], interval=0.4)

        elif turn==1:
            pyautogui.typewrite(["a","e"], interval=0.4)
        elif turn==2:
            pyautogui.typewrite(["a","a","s"], interval=0.4)
        elif turn==3:
            pyautogui.typewrite(["d"], interval=0.4)
        sl(1)
        turn+=1
        if turn==5:
            pyautogui.typewrite(["a","d"], interval=0.4)
            turn=0
    elif py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\sidekick1.png")!=None:
            pyautogui.typewrite(["d"], interval=0.4)
            sl(1)
    elif py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\sidekick2.png")!=None:
            pyautogui.typewrite(["d"], interval=0.4)
            sl(1)
    else:
            sl(1)

    Hello = py.locateAllOnScreen(r"C:\Users\molta\Documents\Pythons\HP.png")
    if len(Hello)==2:
        break
    Hello=[]
    if py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\onwards.png")!=None:
        x,y=py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\onwards.png")
        py.click(x, y)
        sleep(1)
    elif py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\Check.png")!=None:
        winsound.Beep(1000, 100)  # Beep at 1000 Hz for 100 ms
        py.alert(text="Clear the captcha",title="__Alert__", button="Done")
Traceback (most recent call last):
  File "C:/Users/molta/Documents/Pythons/coliseum bot'.py", line 7, in <module>
    if py.locateOnScreen(r"C:\Users\molta\Documents\Pythons\Poison.png")!=None:
  File "C:\Users\molta\AppData\Local\Programs\Python\Python37\lib\site-packages\pyscreeze\__init__.py", line 300, in locateOnScreen
    retVal = locate(image, screenshotIm, **kwargs)
  File "C:\Users\molta\AppData\Local\Programs\Python\Python37\lib\site-packages\pyscreeze\__init__.py", line 281, in locate
    points = tuple(locateAll(needleImage, haystackImage, **kwargs))
  File "C:\Users\molta\AppData\Local\Programs\Python\Python37\lib\site-packages\pyscreeze\__init__.py", line 146, in _locateAll_opencv
    needleImage = _load_cv2(needleImage, grayscale)
  File "C:\Users\molta\AppData\Local\Programs\Python\Python37\lib\site-packages\pyscreeze\__init__.py", line 113, in _load_cv2
    "unsupported or invalid format" % img)
OSError: Failed to read C:\Users\molta\Documents\Pythons\Poison.png because file is missing, has improper permissions, or is an unsupported or invalid format
...