python - Shell 脚本打开 Flask 支持的网页会打开两个窗口

标签 python bash shell flask

我正在为一些同事编写一个本地运行的小型 flask 驱动的网络应用程序。他们并不是非常精通技术,所以我希望他们能够简单地双击链接来运行 shell 脚本,这将启动 Flask 服务器,然后在他们的 Mac 上弹出本地主机页面。

我创建了一个简单的文件start:

python server.py
open http://localhost:5000

但它会弹出两个网页 - 首先是本地主机(但带有“无法连接”消息),然后再次打开本地主机并使其正常工作。太奇怪了!

我尝试在 python 中使用 webbrowser 模块,但这具有相同的效果:

if __name__ == '__main__':
    app.debug = True
    webbrowser.open("http://localhost:5000/")
    app.run()

然后把它放在后面:

if __name__ == '__main__':
    app.debug = True
    app.run()
    webbrowser.open("http://localhost:5000/")

只有在服务器关闭后才打开该页面。

有什么想法吗?我想他们可以关闭非工作页面,但这不是很流畅的功能。

最佳答案

使用线程。请参阅此相关帖子。

python webbrowser.open(url)

关于python - Shell 脚本打开 Flask 支持的网页会打开两个窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28056360/

相关文章:

linux - bash中实现文件/目录的识别

bash - 如何在stdout中延迟直播?

bash - 如何记录shell函数?

python - 绘制一维高斯分布函数

bash - [ : -eq: unary operator expected

shell - 如何加速异步 shell 命令的 emacs 输出?

android dumpsys 权限拒绝

python - 将会计格式的 Pandas 系列转换为数字系列?

python - 如何在同一行打印 2 个项目

python - 流程关闭