PyInstaller 3.2,如何“捆绑”参数?

时间:2016-07-01 12:40:14

标签: python pyinstaller web.py

我正在使用PyInstaller 3.2打包Web.py应用程序。通常,使用Web.py和内置的WSGI server,您可以在命令行上指定端口,例如

$ python main.py 8091

将在端口8091上运行Web.py应用程序(默认为8080)。我正在通过spec文件将应用程序与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规范文件中的/指定/包含命令行参数捆绑/包含?

2 个答案:

答案 0 :(得分:1)

非常hacky,但我最后做的只是在我的web.py应用程序中sys.argv添加一个参数......

sys.argv.append('8888')
app.run()

我还想到了spec文件,我可以这样做:

a = Analysis(['main.py 8888'],

但那根本不起作用。

答案 1 :(得分:0)

EXE中的

options参数仅适用于python解释器(ref