我使用Pyinstaller创建了一个exe文件。
pyinstaller.exe --onefile --icon='Loco.ico program.py
在该程序中,我在绘图中包括一个图像,当我在其文件夹中单独运行该程序时,我得到以下结果:
IOError: [Errno 2] No such file or directory: 'Logo.png'
一种解决方案是将图像包含在exe文件夹中,如下面的链接所示:
pyinstaller不显示图像和图标
但是,再一次强调,一个文件的全部意义就是要有一个完整的文件,而不需要额外的图像。我想解决办法可能就在这个环节上,但我还不明白。
使用PyInstaller(--onefile)绑定数据文件
我的等级库文件如下所示:
# -*- mode: python -*-
a = Analysis(['AMOS_Visualizer.py'],
pathex=['C:\\Users\\elu\\PycharmProjects\\Prosjektet\\Forsok splitting'],
hiddenimports=[],
hookspath=None,
runtime_hooks=None)
pyz = PYZ(a.pure)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='AMOS_Visualizer.exe',
debug=False,
strip=None,
upx=True,
console=True , icon='AMOS.ico')
这是以下内容的一个变体:将数据文件与PyInstaller(--onefile)捆绑在一起,给出的答案更清晰。
分为两行:
如果使用Qt Designer,则可以创建资源文件并将所需的所有图像(包括Logo.png)添加到此资源。
要创建资源文件,可以按照使用QT Designer在GUI中插入图像中的步骤进行操作。
将图像插入资源文件后,指定徽标。png到窗口图标,保存QtDesigner界面并使用命令转换资源文件:pyrcc4-py3 resourcetest。qrc-o资源测试。py
最后,使用--onefile选项创建exe文件。无需编辑规范文件。
编辑:
我相信我找到了解决问题的办法。
# -*- mode: python -*-
a = Analysis(['AMOS_Visualizer.py'],
pathex=['C:\\Users\\elu\\PycharmProjects\\Prosjektet\\Forsok splitting'],
hiddenimports=[],
hookspath=None,
runtime_hooks=None)
for d in a.datas:
if 'pyconfig' in d[0]:
a.datas.remove(d)
break
a.datas += [('Logo.png','C:\\Users\\elu\\PycharmProjects\\Prosjektet\\Forsok splitting\\Logo.png', 'Data')]
pyz = PYZ(a.pure)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='AMOS_Visualizer.exe',
debug=False,
strip=None,
upx=True,
console=True, icon='C:\\Users\\elu\\PycharmProjects\\Prosjektet\\Forsok splitting\\AMOS.ico')
并将以下内容添加到我的主要内容中。py脚本
def resource_path(relative_path):
""" Get absolute path to resource, works for dev and for PyInstaller """
try:
# PyInstaller creates a temp folder and stores path in _MEIPASS
base_path = sys._MEIPASS
except Exception:
base_path = os.path.abspath(".")
return os.path.join(base_path, relative_path)
Logo = resource_path("Logo.png")
我正在Windows上使用Pyinstaller制作一个。我的项目的exe文件。 我想使用选项来获得一个干净的结果和一个易于分发的文件/程序。 我的程序使用用于存储配置选项的文件。此文件可由用户自定义。 使用选项Pyinstaller将所有声明的“数据文件”放入单个文件。 我见过这个请求,但它给出了在同一级别的并位于同一个目录中。 在某个时候,我想过在. spec文件中使用shutil.copy命
尝试转换多个时。使用py2exe将文件复制到exe文件中我得到错误:回溯(最近一次调用上次):文件“ParentWindow.py”,第7行,in 提到的“FileAnalysers1”是包含. py脚本的python包。如何在exe中包含整个包?
问题内容: 现在,我正在使用Pyinstaller。我有一个脚本,可以从img文件夹中获取图像。 我生成.exe的脚本是 问题是仅生成.exe文件,但整个文件夹/ img被忽略。 问题:为了自动获取.exe文件+ / img文件夹,我需要在上一行中添加哪种附加语法? 更新12/18/2013 我的意思是:执行pyinstaller.py脚本并包含所有参数后,我必须在/ dist文件夹中看到:.ex
问题内容: 我是Django的新手,我正尝试通过一个正在开发的简单项目“ dubliners”和一个名为“ book”的应用程序来学习它。目录结构是这样的: 我有一个JPG文件,需要在每个网页的页眉中显示。我应该在哪里存储文件?我应该使用哪个路径来使用模板显示标签?我已经尝试过各种位置和路径,但到目前为止没有任何效果。 … 感谢您在下面发布答案。但是,我尝试了图像的相对路径和绝对路径,但仍然在网页
我还使用tkinter用Python3.7编写了一个程序。因为我使用的是外部图片,所以当我将所有内容编译成一个exe时,我需要包含它们。我尝试过执行,但仍然出现以下错误: _特金特。Tcl错误:无法打开“files/bg.png”:没有这样的文件或目录 代码如下: 我做错了什么?我也尝试过添加二进制文件,将该文件添加到我的spec文件中。我真的搞不懂!
我试图捆绑我的py脚本作为一个. exe使用PyInstaller 2.0。我可以捆绑脚本,但是在我的脚本中,我需要打开一个应该捆绑在exe中的文件(所以它是可移植的)。我做这个有困难... 在我的生活中。是的,我有 我使用PyInstaller 2.0,这在我的电脑上工作正常,但是如果我把exe转移到另一台电脑上,它就不能工作了...PyInstaller 2.0非常新,所以上面的文档很少,出版