Код работает без ошибок в IDE. Но после компиляции и запуска, появляется ошибка:
[ WARN:[email protected]] global D:\a\opencv-python\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp (239) cv::findDecoder imread_('A:\Python\PR\output\progres_bar.png'): can't open/read file: check file path/integrity
Traceback (most recent call last):
File "bot.py", line 24, in run
File "v3.py", line 74, in start
progress_bar = pga.locateOnScreen(progres_bar_img, confidence=0.6, region=(right_down_screen_size))
File "pyautogui\__init__.py", line 175, in wrapper
File "pyautogui\__init__.py", line 213, in locateOnScreen
File "pyscreeze\__init__.py", line 373, in locateOnScreen
File "pyscreeze\__init__.py", line 353, in locate
File "pyscreeze\__init__.py", line 207, in _locateAll_opencv
File "pyscreeze\__init__.py", line 170, in _load_cv2
OSError: Failed to read A:\Python\PR\output\progres_bar.png because file is missing, has improper permissions, or is an unsupported or invalid format
Компилирую через auto-py-to-exe
. Команда для компиляцию выглядит так:
pyinstaller --noconfirm --onefile --console --add-data "A:/Python/PR/progres_bar.png;." --add-data "A:/Python/PR/ui.py;." --add-data "A:/Python/PR/v3.py;." "A:/Python/PR/main.py"
В коде путь к файлу прописан вот так:
def resource_path(relative_path):
try:
base_path = sys._MEIPASS
except Exception:
base_path = os.path.abspath(".")
return os.path.join(base_path, relative_path)
progres_bar_img = resource_path("progres_bar.png")
Свежие комментарии