【问题标题】:Python Parser to resolve IP address from hostnames in text filePython Parser 从文本文件中的主机名解析 IP 地址
【发布时间】:2018-08-10 20:56:15
【问题描述】:

我正在尝试使用套接字将文本文件中的主机名解析为 IP。

文件.txt

google.com
yahoo.com
iliketurtles.com

import socket
with open("file.txt", "r") as ins:
  for line in ins:
    print  socket.gethostbyname(line.strip())

我收到以下错误:

打印 socket.gethostbyname(line.strip()) socket.gaierror: [Errno 8] 提供节点名或服务名,或未知

我需要做些什么来解析文件每一行的主机名并打印到标准输出?

提前致谢!

【问题讨论】:

  • 或者你确定line.strip() 不为空?您的文件中是否有一些行尾字符?此外,您应该查看socket.getaddrinfo() 而不是socket.gethostbyname(),因为socket 文档中解释了所有原因。

标签: python sockets dns


【解决方案1】:

此代码对我有用。感觉是网络问题。检查您的互联网连接 - 尝试 ping 此服务器并检查您的 DNS 服务器是否正常工作。

【讨论】:

  • 我可以 ping 列表中的所有主机并分别对它们运行 dig 命令。我在 OSX 上。您正在测试什么操作系统?我也在 Python 2.7
  • 我也使用 OSX。我在两个版本上都进行了测试。
猜你喜欢
  • 2013-03-25
  • 2014-10-13
  • 1970-01-01
  • 2011-03-12
  • 2014-12-09
  • 2014-02-26
  • 2011-01-10
  • 2013-01-29
  • 2012-08-04
相关资源
最近更新 更多