pyinstaller fails with plotly(pyinstaller 因情节失败而失败)
问题描述
我正在使用 pyinstaller 编译我当前的程序,它似乎无法处理所有必需的文件.它自己运行良好,无需情节它也可以编译和运行.
I am compiling my current program using pyinstaller and it seems to not be able to handle all required files in plotly. It runs fine on its own, and without plotly it can compile and run as well.
似乎无法找到我什至无法在驱动器上的任何位置找到的文件default-schema.json".
It seems be to failing to find a file "default-schema.json" that I cannot even locate anywhere on my drive.
Traceback(最近一次调用最后一次):文件comdty_runtime.py",行17,在文件"中,第 2237 行,在_find_and_load 文件",第 2226 行,在 _find_and_load_unlocked 文件"中,第 1191 行,在 _load_unlocked 文件"中,行1161,在 _load_backward_compatible 文件中"d:usersktehraniappdatalocalcontinuumanaconda3envspy34libsite-packagesPyInstallerloaderpyimod03_importers.py",第 389 行,在加载模块exec(bytecode, module.dict) 文件actual_vs_mai.py",第 12 行,在文件",第 2237 行,在_find_and_load 文件",第 2226 行,在 _find_and_load_unlocked 文件"中,第 1191 行,在 _load_unlocked 文件"中,行1161,在 _load_backward_compatible 文件中"d:usersktehraniappdatalocalcontinuumanaconda3envspy34libsite-packagesPyInstallerloaderpyimod03_importers.py",第 389 行,在加载模块exec(bytecode, module.dict) File "site-packagesplotly__init__.py",第 31 行,在 File"",第 2237 行,在 _find_and_load 文件中"",第 2226 行,在 _find_and_load_unlocked文件",第 1191 行,在 _load_unlocked
文件",第 1161 行,在_load_backward_compatible 文件d:users*appdatalocalcontinuumanaconda3envspy34libsite-packagesPyInstallerloaderpyimod03_importers.py",第 389 行,在加载模块exec(bytecode, module.dict) 文件site-packagesplotlygraph_objs__init__.py",第 14 行,在
文件",第 2237 行,在 _find_and_load
文件",第 2226 行,在_find_and_load_unlocked 文件",第 1191 行,在 _load_unlocked 文件",行1161,在 _load_backward_compatible 文件中"d:users*appdatalocalcontinuumanaconda3envspy34libsite-packagesPyInstallerloaderpyimod03_importers.py",第 389 行,在加载模块exec(bytecode, module.dict) 文件site-packagesplotlygraph_objsgraph_objs.py",第 34 行,在文件",第 2237 行,在 _find_and_load
文件",第 2226 行,在_find_and_load_unlocked 文件",第 1191 行,在 _load_unlocked 文件",行1161,在 _load_backward_compatible 文件中"d:users*appdatalocalcontinuumanaconda3envspy34libsite-packagesPyInstallerloaderpyimod03_importers.py",第 389 行,在加载模块exec(bytecode, module.dict) 文件site-packagesplotlygraph_reference.py",第 578 行,在
文件site-packagesplotlygraph_reference.py",第 70 行,在get_graph_reference 文件站点包setuptools-27.2.0-py3.4.eggpkg_resources__init__.py",第 1215 行,在 resource_string 文件中站点包setuptools-27.2.0-py3.4.eggpkg_resources__init__.py",第 1457 行,在 get_resource_string 文件中站点包setuptools-27.2.0-py3.4.eggpkg_resources__init__.py",第 1530 行,在 _get 文件中"d:users*appdatalocalcontinuumanaconda3envspy34libsite-packagesPyInstallerloaderpyimod03_importers.py",第 474 行,在获取数据使用 open(path, 'rb') as fp: FileNotFoundError: [Errno 2] No such file or directory: 'H:PythonCommodity_MAI_Trade_ListCodedistcomdty_runtimeplotlypackage_datadefault-schema.json' comdty_runtime 执行脚本失败
Traceback (most recent call last): File "comdty_runtime.py", line 17, in File "", line 2237, in _find_and_load File "", line 2226, in _find_and_load_unlocked File "", line 1191, in _load_unlocked File "", line 1161, in _load_backward_compatible File "d:usersktehraniappdatalocalcontinuumanaconda3envspy34libsite-p ackagesPyInstallerloaderpyimod03_importers.py", line 389, in load_module exec(bytecode, module.dict) File "actual_vs_mai.py", line 12, in File "", line 2237, in _find_and_load File "", line 2226, in _find_and_load_unlocked File "", line 1191, in _load_unlocked File "", line 1161, in _load_backward_compatible File "d:usersktehraniappdatalocalcontinuumanaconda3envspy34libsite-p ackagesPyInstallerloaderpyimod03_importers.py", line 389, in load_module exec(bytecode, module.dict) File "site-packagesplotly__init__.py", line 31, in File "", line 2237, in _find_and_load File "", line 2226, in _find_and_load_unlocked File "", line 1191, in _load_unlocked
File "", line 1161, in _load_backward_compatible File "d:users*appdatalocalcontinuumanaconda3envspy34libsite-p ackagesPyInstallerloaderpyimod03_importers.py", line 389, in load_module exec(bytecode, module.dict) File "site-packagesplotlygraph_objs__init__.py", line 14, in
File "", line 2237, in _find_and_load
File "", line 2226, in _find_and_load_unlocked File "", line 1191, in _load_unlocked File "", line 1161, in _load_backward_compatible File "d:users*appdatalocalcontinuumanaconda3envspy34libsite-p ackagesPyInstallerloaderpyimod03_importers.py", line 389, in load_module exec(bytecode, module.dict) File "site-packagesplotlygraph_objsgraph_objs.py", line 34, in File "", line 2237, in _find_and_load
File "", line 2226, in _find_and_load_unlocked File "", line 1191, in _load_unlocked File "", line 1161, in _load_backward_compatible File "d:users*appdatalocalcontinuumanaconda3envspy34libsite-p ackagesPyInstallerloaderpyimod03_importers.py", line 389, in load_module exec(bytecode, module.dict) File "site-packagesplotlygraph_reference.py", line 578, in
File "site-packagesplotlygraph_reference.py", line 70, in get_graph_referenc e File "site-packagessetuptools-27.2.0-py3.4.eggpkg_resources__init__.py", li ne 1215, in resource_string File "site-packagessetuptools-27.2.0-py3.4.eggpkg_resources__init__.py", li ne 1457, in get_resource_string File "site-packagessetuptools-27.2.0-py3.4.eggpkg_resources__init__.py", li ne 1530, in _get File "d:users*appdatalocalcontinuumanaconda3envspy34libsite-p ackagesPyInstallerloaderpyimod03_importers.py", line 474, in get_data with open(path, 'rb') as fp: FileNotFoundError: [Errno 2] No such file or directory: 'H:PythonCommodity_M AI_Trade_ListCodedistcomdty_runtimeplotlypackage_datadefault-schema. json' Failed to execute script comdty_runtime
推荐答案
我遇到了同样的问题,并通过 pyinstaller 文档找到了解决办法:
I came across the same problem, and worked my way through the pyinstaller documentation to find out what to do:
pyinstaller 会创建一个与您的 .py 文件同名的 .spec 文件.在a = Analysis下,你会发现datas = []
pyinstaller creates a .spec file with the same name as your .py file. under a = Analysis, you will find datas = []
a = Analysis(['graphic_interface.py'],
pathex=[xxx],
binaries=[],
datas=[],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
在那里你添加了 plotly 的路径.相对路径对我不起作用,所以我设置了一个绝对路径
there you add the path for plotly. a relative path didn't work for me, so I set an absolute path
datas=[('C:\Users\Me\PycharmProjects\Project\venv\Lib\site-packages\plotly\', 'plotly')],
现在你必须在运行 pyinstaller 时使用 spec 文件
now you have to use the spec file when running pyinstaller
pyinstaller myproject.spec myproject.py
您无需担心其他命令,例如 oneFile 等,因为它们已经保存在 .spec 文件中
you dont need to worry about other commands like oneFile etc, because they are already saved in the .spec file
这篇关于pyinstaller 因情节失败而失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:pyinstaller 因情节失败而失败
基础教程推荐
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 筛选NumPy数组 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01