Python 将Streamlight应用程序转换为pyinstaller可执行文件

Python 将Streamlight应用程序转换为pyinstaller可执行文件,python,pyinstaller,streamlit,Python,Pyinstaller,Streamlit,我正在streamlight中构建一个应用程序,由于多种原因,该应用程序无法托管在服务器上。最主要的原因是,它也应该在没有互联网接入的情况下工作。因此,我希望将我的应用程序转换为某种可执行文件,用户可以在自己的笔记本电脑上运行,并且应用程序托管在localhost上 我有以下代码: import streamlit.cli as stcli import sys def streamlit_run(): sys.argv = ["streamlit", "

我正在
streamlight
中构建一个应用程序,由于多种原因,该应用程序无法托管在服务器上。最主要的原因是,它也应该在没有互联网接入的情况下工作。因此,我希望将我的应用程序转换为某种可执行文件,用户可以在自己的笔记本电脑上运行,并且应用程序托管在localhost上

我有以下代码:

import streamlit.cli as stcli
import sys

def streamlit_run():
    sys.argv = ["streamlit", "run", "main.py", "--global.developmentMode=false"]
    sys.exit(stcli.main())


if __name__ == '__main__':
    streamlit_run()
main.py
目前是一个简单的hello world应用程序。如果我跑

python wrapper.py
在我的命令行中,应用程序在localhost上运行。我使用
pyinstaller
,运行

pyinstaller --onefile script.py
并创建一个可执行文件。然而,如果我运行这个可执行文件,什么也不会发生:我只在一瞬间看到一个黑屏,就是这样。关于如何解决此问题,有什么帮助吗?任何其他让Cleint使用应用程序而不将其托管在服务器上的解决方案都将不胜感激

版本:
python==3.9
streamlit==0.73.0
pyinstaller==4.1