python - 操作系统错误: [Errno 48] Address already in use

标签 python sockets flask

我正在尝试从 Mac 终端设置服务器。

我已在端口 5000 上建立了连接,并希望在 5002 中打开另一个端口使用此命令:

python Blockchain.py -p 5002

但这给出了错误:

OSError: [Errno 48] Address already in use

我尝试验证端口 5002 是否已打开并正在监听。所以我跑 shell命令lsof -i:5002但它没有返回任何内容。

堆栈跟踪

下面附有错误日志和堆栈跟踪:

Traceback (most recent call last):
 File "Blockchain.py", line 290, in <module>
    app.run(host='0.0.0.0', port=5000)
  File "/anaconda/envs/blockchain/lib/python3.6/site-packages/flask/app.py", line 841, in run
    run_simple(host, port, self, **options)
  File "/anaconda/envs/blockchain/lib/python3.6/site-packages/werkzeug/serving.py", line 814, in run_simple
    inner()
  File "/anaconda/envs/blockchain/lib/python3.6/site-packages/werkzeug/serving.py", line 774, in inner
    fd=fd)
  File "/anaconda/envs/blockchain/lib/python3.6/site-packages/werkzeug/serving.py", line 666, in make_server
    passthrough_errors, ssl_context, fd=fd)
  File "/anaconda/envs/blockchain/lib/python3.6/site-packages/werkzeug/serving.py", line 577, in __init__
    self.address_family), handler)
  File "/anaconda/envs/blockchain/lib/python3.6/socketserver.py", line 453, in __init__
    self.server_bind()
  File "/anaconda/envs/blockchain/lib/python3.6/http/server.py", line 136, in server_bind
    socketserver.TCPServer.server_bind(self)
  File "/anaconda/envs/blockchain/lib/python3.6/socketserver.py", line 467, in server_bind
    self.socket.bind(self.server_address)
OSError: [Errno 48] Address already in use

研究

我已经提到了同一问题的各种答案:

我尝试过的

此外,我尝试了以下方法来解决该问题:

  1. 重新启动终端
  2. 重新启动 PyCharm
  3. 在不同的套接字上运行(给出相同的错误)。

这些似乎都不起作用。我对 Python 还很陌生。

感谢任何帮助。

最佳答案

在尝试实现answer suggested by DeepSpace时我偶然发现了以下答案:

Python - How to run multiple flask apps from same client machine

要在不同的机器上运行 Flask 应用程序,请使用:

export FLASK_APP=Blockchain.py
flask run --host 0.0.0.0 --port 5000

接下来,打开另一个终端并使用:

export FLASK_APP=Blockchain.py
flask run --host 0.0.0.0 --port 5001

鸣谢:用户metmirr

关于python - 操作系统错误: [Errno 48] Address already in use,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51309895/

相关文章:

Python Flask -- URL 编码的前导斜杠导致 404 或 405

python - 数据分组问题,但基于 "window"

python - 在计算机视觉中调整图像大小和重新缩放图像之间有区别吗?

python - 在 scipy 中指定 pdist 的缺失值

sockets - 为什么当我在许多 goroutine 中发送一个 tcp shake packet(SYN) 时,我在每个 goroutine 中读取了很多响应包

node.js - 有关未读消息的通知(node.js + sockets.io)

Python-Flask 不接受自定义字体

python - 名称错误 : name 'raw_input' is not defined

c - 我们在服务器中绑定(bind)的端口与 netstat 不同

python - 如何在Windows Azure上部署Flask+ Python应用程序?