我正在尝试使用 Python 读取域名的 IP 地址,但出现奇怪的错误,我不太明白

问题描述

当我运行这段代码时:

import socket

domainName = 'test.domain.io'

old_ip = socket.gethostbyname(domainName)

print(old_ip)

我在 PyCharm 中收到此错误: “文件“C:/Users/UserName/PycharmProjects/AddyGet/ThingstoTry.py”,第 5 行,在 old_ip = socket.gethostbyname(domainName) socket.gaierror: [Errno 11001] getaddrinfo 失败"

当我将调试器指向第 5 行时,我看到以下错误

"ret.Metadata= {NameError}name 'ret' is not defined"
"route53= {NameError}name 'route53' is not defined"
"zone= {NameError}name 'zone' is not defined"
"zone= {NameError}name 'zone' is not defined"
"route53.connection= {NameError}name 'route53' is not defined"

域托管在 route53 上,但我没有导入 route53,因为我认为我不需要只检索 IP 地址。那么,我是否需要导入 route53 并使用 route53 方法获取此 IP 地址?任何见解将不胜感激。

另外值得一提的是,因为它是一个“socket.gaierror”,我在这里尝试了解决方案: "getaddrinfo failed",what does that mean?

我不在防火墙后面(我禁用了 Window 的防火墙)。我的系统认没有代理环境变量,将自己置于代理之后也无济于事。

解决方法

在我的计算机上运行代码示例,我得到输出 class Video: def __init__(self): # I don't want to have to load the video immediately self.vid = None # What should I initialize here? def load_video(self,path): # self.vid is filled in with this method self.vid = # do something #

这可能不是 Python 问题,而是操作系统问题。如果您打开 Windows 23.221.222.250 提示并键入:

,会发生什么
cmd

这是我的输出(删除重复和统计数据):

ping test.domain.io