python - gaierror : [Errno 8] nodename nor servname provided, 或未知(使用 macOS Sierra)

标签 python sockets

socket.gethostbyname(socket.gethostname()) 在 OS X El Capitan 上运行良好。但是,在 Mac 更新到 macOS Sierra 后,它现在无法正常工作。

谢谢!

import socket
socket.gethostbyname(socket.gethostname())

Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    socket.gethostbyname(socket.gethostname())
gaierror: [Errno 8] nodename nor servname provided, or not known

最佳答案

OP 的评论中有一个基于 another question, 的答案 这需要编辑/etc/hosts,即echo 127.0.0.1 $HOSTNAME >>/etc/hosts

或者,您可以使用 socket.gethostbyname('localhost'),假设 localhost 是您所需要的并且它在您的 /etc/中定义主机

关于python - gaierror : [Errno 8] nodename nor servname provided, 或未知(使用 macOS Sierra),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39970606/

相关文章:

python - 将选定的参数从字典传递给函数

javascript - 用python更新 Electron 中的元素(和 flask ?)

python - 如果不满足条件,则在导入时引发异常

python - 接下来在迭代器中优雅地捕获 python 异常

linux - 套接字选项在 Linux 中是本地的吗?

python - 使用进程名称获取另一个程序的窗口标题

python - 在一个脚本中更新列表并从另一个脚本访问更新的列表

c - UDP客户端连接过程正确,Unix环境下传输失败

c# - 适用于 Windows 和 Linux 的同一台机器上的套接字

c - unix 中使用套接字的 IPC 中数据大小的最大限制