PyInstaller:使用数据文件和子进程

时间:2013-05-07 16:34:47

标签: python subprocess pyinstaller

我已经使用pyinstaller将我的几个python脚本成功捆绑到exe文件中。但是,我遇到了使用本地数据文件的不同python脚本的问题。使用这个问题并回答PyInstaller 2.0 bundle file as --onefile我使用我的本地文件获得了脚本,但是我收到了错误。

我有一个名为“translate.py”的主python脚本,我有几个子进程调用不同的python脚本调用“loader.py”,它接受各种参数。所以我的正常子流程看起来像这样

python.exe loader.py loader.config src_dir=data out_dir=sql tmp_dir=temp

在我的pyinstaller版本中,我使用上面问题的答案来进行以下子进程调用

python.exe C:\Users\AppData\Local\Temp\_MEI70922\loader.py C:\Users\AppData\Local\Temp\_MEI70922\loader.config src_dir=dat
a out_dir=sql tmp_dir=temp

然而,这无法运行子进程,我收到以下错误

no module named site 

所以我想知道pyinstaller是否包含我可能需要的所有模块?

我已经调整了spec文件来分析所有这样的python脚本

a = Analysis(['c:\\temp\\translate.py','c:\\temp\\loader.py','c:\\temp\\prep.py','c:\\temp\\prep2.py'],
         pathex=['C:\\Temp\\pyinstaller-2.0\\pyinstaller-2.0'],
         hiddenimports=[],
         hookspath=None)

但我再次得到名为site的no模块。

我知道我的代码可能会更好但是我被卡住了,因为其他人编写了loader.py并且我编写了translate.py,现在我需要将它们全部捆绑到一个简单的exe文件中。

感谢任何人的帮助

0 个答案:

没有答案