Flask:找到第一个开放端口

时间:2017-06-16 21:29:47

标签: python macos python-3.x http flask

如何在计算机上找到第一个打开的HTTP端口,并启动在其上运行的Flask服务器?

我会像这样运行应用程序:

app.run(port=first_open_port, host='0.0.0.0')

1 个答案:

答案 0 :(得分:3)

它可能感觉像是一个hack,但至少在开发中(这是他们建议你使用app.run的唯一时间)你可以简单地从一个端口号开始,在try中运行app.run:除了:block,如果它抛出一个socket.error你增加你的候选端口#并重试。

for port in range(100, 5000):
    try:
        app.run(port=port)
        break
    except socket.error:
        pass