“getaddrinfo 失败”,这是什么意思?
- 2024-12-30 08:42:00
- admin 原创
- 116
问题描述:
File "C:Python27libsocket.py", line 224, in meth
return getattr(self._sock,name)(*args) gaierror: [Errno 11004]
getaddrinfo failed
从Bottle 文档启动“Hello World”示例时出现此错误
解决方案 1:
这很可能意味着主机名无法解析。
import socket
socket.getaddrinfo('localhost', 8080)
如果在那里不起作用,那么在 Bottle 示例中也不会起作用。如果这是问题所在,您可以尝试使用“127.0.0.1”代替“localhost”。
解决方案 2:
就我而言,问题是当我没有代理时,某些安装在某个时候在我的计算机上定义了环境变量http_proxy 。
删除http_proxy环境变量可以解决问题。
解决方案 3:
我遇到的问题是我需要为和添加环境变量。 http_proxy
`https_proxy`
例如,
http_proxy=http://your_proxy:your_port
https_proxy=https://your_proxy:your_port
要在 Windows 中设置这些环境变量,请参阅此问题的答案。
解决方案 4:
我花了好几个小时来修复这个问题,但解决方案其实很简单。我的 ftp 服务器地址以 开头ftp://
。我删除了它,代码就开始工作了。
之前的 FTP 地址:
ftp_css_address = "ftp://science-xyz.xyz.xyz.int"
改为:
ftp_css_address = "science-xyz.xyz.xyz.int"
解决方案 5:
确保在命令中传递代理属性,例如 - pip install --proxy= http://proxyhost:proxyport pixiedust
使用具有直接连接的代理端口(有/无密码)。请咨询您的公司 IT 管理员。快捷方式是找出 eclipse 中使用的具有直接连接的网络设置。
如果您在公司防火墙后工作,您会经常遇到此问题。您必须检查 Internet Explorer - InternetOptions -LAN 连接 - 设置
取消选中 - 使用自动配置脚本 选中 - 为您的 LAN 使用代理服务器。确保您已提供正确的地址和端口。
单击“确定”返回 anaconda 终端,您可以尝试安装命令
解决方案 6:
也许这会对某些人有所帮助。我在 python 脚本中设置了代理,但一直收到问题中提到的错误。
下面是一段块,一开始将我的用户名和密码作为常量。
if (use_proxy):
proxy = req.ProxyHandler({'https': proxy_url})
auth = req.HTTPBasicAuthHandler()
opener = req.build_opener(proxy, auth, req.HTTPHandler)
req.install_opener(opener)
如果您使用的是公司笔记本电脑,并且没有连接到 Direct Access 或办公室 VPN,则上述块将抛出错误。您需要做的就是连接到您的组织 VPN,然后执行您的 Python 脚本。
谢谢