преобразование .py в .exe с использованием auto-py-to-exe с ошибкой

Я хочу преобразовать .py в .exe. Для этого я узнал, что auto-py-to-exe прост и работает для Python >= 2.7 (включая 3.7 ????). Когда я попытался преобразовать простое приложение, оно работало гладко (работает auto-py-exe). Но когда я пытаюсь преобразовать свои исходные сценарии Python, возникает ошибка:

An error occurred, traceback follows:
Traceback (most recent call last):
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\pywin32\pywintypes.py", line 35, in pywin32error
    yield
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\pywin32\win32api.py", line 43, in LoadLibraryEx
    return _dll._LoadLibraryEx(fileName, 0, flags)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\core\cffi\_dll.py", line 26, in _LoadLibraryEx
    function_name='LoadLibraryEx')
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\core\cffi\_util.py", line 81, in __call__
    self._raise_error(function_name)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\core\cffi\_util.py", line 92, in _raise_error
    raise exception
OSError: [WinError 2] The system cannot find the file specified

Это мой первый опыт преобразования кода в .exe, поэтому я понятия не имею, что теперь делать (кроме поиска в Интернете). Я даже не знаю, что вызывает эту ошибку. У меня есть сомнения по поводу майави, но я не уверен. Anyhelp будет весьма приветствоваться.

Программа: питон 3.7

Графический интерфейс: PyQt5

Библиотеки включены: mayavi, opencv, matplotlib, PIL, pylab, scipy и т. д.

Команда для преобразования: pyinstaller -y "path_to_script.py"

Правки: я уверен, что это из-за mayavi, так как самый простой прилагаемый код не конвертировался в .exe (извините за длинное сообщение!) Это из-за mayavi, но я все еще хочу решить эту проблему, спасибо заранее для любых предложений.

Код:

import numpy as np
from mayavi.mlab import contour3d
from mayavi import mlab

x, y, z = np.ogrid[-3:3:60j, -3:3:60j, -3:3:60j]

H1   =   0.45+x**2+y**2-z**2
obj1 = contour3d(H1, contours=[0], transparent=False)
mlab.show()

Команда для преобразования: pyinstaller -y "path_to_script.py"

Ошибка:

An error occurred, traceback follows:
Traceback (most recent call last):
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\pywin32\pywintypes.py", line 35, in pywin32error
    yield
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\pywin32\win32api.py", line 43, in LoadLibraryEx
    return _dll._LoadLibraryEx(fileName, 0, flags)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\core\cffi\_dll.py", line 26, in _LoadLibraryEx
    function_name='LoadLibraryEx')
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\core\cffi\_util.py", line 81, in __call__
    self._raise_error(function_name)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\core\cffi\_util.py", line 92, in _raise_error
    raise exception
OSError: [WinError 2] The system cannot find the file specified

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\users\lab_pc\anaconda3\lib\site-packages\auto_py_to_exe\__main__.py", line 269, in convert
    pyi.run() # Execute PyInstaller
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 111, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 63, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 844, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 791, in build
    exec(code, spec_namespace)
  File "C:\Users\lab_pc\AppData\Local\Temp\tmp_0mronij\stackoverflow_ask_py2exe.spec", line 17, in <module>
    noarchive=False)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 243, in __init__
    self.__postinit__()
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\building\datastruct.py", line 158, in __postinit__
    self.assemble()
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 567, in assemble
    redirects=self.binding_redirects))
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\depend\bindepend.py", line 231, in Dependencies
    for ftocnm, fn in getAssemblyFiles(pth, manifest, redirects):
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\depend\bindepend.py", line 407, in getAssemblyFiles
    for assembly in getAssemblies(pth):
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\depend\bindepend.py", line 358, in getAssemblies
    res = GetManifestResources(pth)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\utils\win32\winmanifest.py", line 1005, in GetManifestResources
    return winresource.GetResources(filename, [RT_MANIFEST], names, languages)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\PyInstaller\utils\win32\winresource.py", line 168, in GetResources
    hsrc = win32api.LoadLibraryEx(filename, 0, LOAD_LIBRARY_AS_DATAFILE)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\pywin32\win32api.py", line 43, in LoadLibraryEx
    return _dll._LoadLibraryEx(fileName, 0, flags)
  File "c:\users\lab_pc\anaconda3\lib\contextlib.py", line 130, in __exit__
    self.gen.throw(type, value, traceback)
  File "c:\users\lab_pc\anaconda3\lib\site-packages\win32ctypes\pywin32\pywintypes.py", line 37, in pywin32error
    raise error(exception.winerror, exception.function, exception.strerror)
win32ctypes.pywin32.pywintypes.error: (2, 'LoadLibraryEx', 'The system cannot find the file specified')

Project output will not be moved to output folder
Complete.

Должен ли я использовать какой-то другой инструмент для преобразования? (Предложения, пожалуйста, в контексте моей проблемы). Спасибо


person Ashutosh Rana    schedule 31.07.2019    source источник
comment
в этот другой вопрос кому-то удалось создать исполняемый файл Windows, используя cxfreeze вместо pyinstaller.   -  person Felipe Lema    schedule 31.07.2019