【发布时间】:2020-12-26 05:26:20
【问题描述】:
我正在尝试使用 PyInstaller 将我的项目转换为 exe, 我在此链接上尝试了两个选项的解决方案: Error when using pyinstaller: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff
也试过这个解决方案,将所有'utf-8'编码改为'cp1252': UnicodeDecodeError: 'utf-8' codec can't decode byte 0x96 in position 35: invalid start byte
但它无法解决我的问题:
An error occurred while packaging
Traceback (most recent call last):
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\auto_py_to_exe\packaging.py", line 131, in package
run_pyinstaller()
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\__main__.py", line 114, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\__main__.py", line 65, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\building\build_main.py", line 734, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\building\build_main.py", line 681, in build
exec(code, spec_namespace)
File "C:\Users\MFT\AppData\Local\Temp\tmplg5pykts\v7.spec", line 6, in <module>
a = Analysis(['C:/Users/MFT/PycharmProjects/urunArayuz/v7.py'],
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\building\build_main.py", line 244, in __init__
self.__postinit__()
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\building\datastruct.py", line 160, in __postinit__
self.assemble()
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\building\build_main.py", line 422, in assemble
self.graph.process_post_graph_hooks()
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\depend\analysis.py", line 311, in process_post_graph_hooks
module_hook.post_graph()
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\depend\imphook.py", line 417, in post_graph
self._load_hook_module()
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\depend\imphook.py", line 383, in _load_hook_module
self._hook_module = importlib_load_source(
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\compat.py", line 797, in importlib_load_source
return mod_loader.load_module()
File "<frozen importlib._bootstrap_external>", line 462, in _check_name_wrapper
File "<frozen importlib._bootstrap_external>", line 962, in load_module
File "<frozen importlib._bootstrap_external>", line 787, in load_module
File "<frozen importlib._bootstrap>", line 265, in _load_module_shim
File "<frozen importlib._bootstrap>", line 702, in _load
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 783, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\hooks\hook-zmq.py", line 20, in <module>
hiddenimports = ['zmq.utils.garbage'] + collect_submodules('zmq.backend')
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\utils\hooks\__init__.py", line 582, in collect_submodules
names = exec_statement("""
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\utils\hooks\__init__.py", line 85, in exec_statement
return __exec_python_cmd(cmd)
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\utils\hooks\__init__.py", line 74, in __exec_python_cmd
txt = exec_python(*cmd, env=pp_env)
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\compat.py", line 641, in exec_python
return exec_command(*cmdargs, **kwargs)
File "c:\users\mft\appdata\local\programs\python\python38-32\lib\site-packages\PyInstaller\compat.py", line 431, in exec_command
out = out.decode(encoding, "replace")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x87 in position 112: invalid start byte
【问题讨论】:
-
这很奇怪。你能分享你的项目文件吗?
-
我建议尝试不同的 pyinstaller 版本。
-
@NicholasObert 这是 7779 行你确定吗?如果你愿意,我可以在 5 分钟内上传到 gdrive 上的外部链接
-
嗯,我想这不是一个好主意。按照@Sajad.sni 的建议尝试不同版本的 pyinstaller
-
至少免费且快速!!。正如我在我的 python 包管理器中看到的,pyinstaller 更新到 4.0 版。也许降级到以前的版本可以解决问题,因为没有足够的线索来解决这个问题。 @NicholasObert
标签: python pyinstaller