PyInstaller 3.2,如何"bundle"参数?
PyInstaller 3.2, how to "bundle" arguments?
我正在使用 PyInstaller 3.2 打包 Web.py 应用程序。通常,使用 Web.py 和内置 WSGI server,您可以在命令行上指定端口,例如
$ python main.py 8091
运行 Web.py 应用程序会在端口 8091(默认为 8080)上。我通过规范文件将应用程序与 PyInstaller 捆绑在一起,但我不知道如何用它指定端口号——传入选项似乎只适用于 3 given ones in the docs。我试过了:
exe = EXE(pyz,
a.scripts,
[('8091', None, 'OPTION')],
a.binaries,
a.zipfiles,
a.datas,
name='main',
debug=False,
strip=False,
upx=True,
console=False )
但这似乎没有任何作用。我在文档中没有看到任何其他内容——是否有另一种方法可以将命令行参数捆绑/指定/包含到 PyInstaller 规范文件?
非常 hacky,但我最后所做的只是在我的 web.py 应用程序的 sys.argv
中附加一个参数...
sys.argv.append('8888')
app.run()
我还认为在我的 spec
文件中我可以这样做:
a = Analysis(['main.py 8888'],
但这根本不起作用。
EXE 中的 options
参数仅适用于 python 解释器 (ref)
我正在使用 PyInstaller 3.2 打包 Web.py 应用程序。通常,使用 Web.py 和内置 WSGI server,您可以在命令行上指定端口,例如
$ python main.py 8091
运行 Web.py 应用程序会在端口 8091(默认为 8080)上。我通过规范文件将应用程序与 PyInstaller 捆绑在一起,但我不知道如何用它指定端口号——传入选项似乎只适用于 3 given ones in the docs。我试过了:
exe = EXE(pyz,
a.scripts,
[('8091', None, 'OPTION')],
a.binaries,
a.zipfiles,
a.datas,
name='main',
debug=False,
strip=False,
upx=True,
console=False )
但这似乎没有任何作用。我在文档中没有看到任何其他内容——是否有另一种方法可以将命令行参数捆绑/指定/包含到 PyInstaller 规范文件?
非常 hacky,但我最后所做的只是在我的 web.py 应用程序的 sys.argv
中附加一个参数...
sys.argv.append('8888')
app.run()
我还认为在我的 spec
文件中我可以这样做:
a = Analysis(['main.py 8888'],
但这根本不起作用。
options
参数仅适用于 python 解释器 (ref)