我们有一个使用Flask开发的Web应用程序,该应用程序在Windows服务器上运行,客户端连接到该服务器。现在,我们有一个使用案例,希望将服务器和客户端合并到一台笔记本电脑上,以便服务器和客户端代码一起运行,并使其显示为本地Windows应用程序。
基本上,我们现在有两个以前没有的要求:
1.必须能够从Python中启动浏览器。
1.必须能够在浏览器窗口关闭时终止Python( flask )应用程序。
我们已经成功地解决了第一个问题。第二个问题仍然难以解决。我们已经尝试终止werkzeug
服务器,但Python代码仍然在运行。请向了解情况的人寻求帮助。
5条答案
按热度按时间b1uwtaje1#
在更彻底地阅读了文档并试验了实现之后,我们发现下面的主要代码可以满足这个目标。
8e2ybdfx2#
我目前没有Windows客户端,所以我不能确切地测试我所建议的。
使用pywinauto可以检查窗口的名称。
您可以构建一个脚本,在后台对此进行检查,并在请求的浏览器窗口未打开时终止Flask应用程序。
qf9go6mv3#
这是使用flakwebgui的一种更简单的方法
flakwebgui-用Flask(或Django)创建桌面应用程序!
https://pypi.org/project/flaskwebgui/
4ioopgfo4#
这是一个用于flakwebgui的example。
我已经使用pyinstaller将python-flask应用程序转换为可执行文件。
我使用Installforge将构建文件转换为安装文件。
8fsztsew5#
我略为修改主要答复如下:
这将在Chrome关闭时运行并退出服务器: