Python在.txt文件的IP地址列表上运行DNS查找

Python在.txt文件的IP地址列表上运行DNS查找,python,python-3.x,reverse-dns,Python,Python 3.x,Reverse Dns,我很难弄清楚如何让python对我文本文件中的每个IP地址进行DNS查找。我得到一个TypeError:getaddrinfo()参数1必须是string或None。有人能帮忙吗 import socket ip_list = open('output.txt', 'r') ais = socket.getaddrinfo(ip_list, 0) print(ais) 当您需要迭代文件迭代器并将字符串传递给函数时,您将把文件iteable对象作为参数直接传递给socket.getaddri

我很难弄清楚如何让python对我文本文件中的每个IP地址进行DNS查找。我得到一个TypeError:getaddrinfo()参数1必须是string或None。有人能帮忙吗

import socket

ip_list = open('output.txt', 'r')
ais = socket.getaddrinfo(ip_list, 0)

print(ais)

当您需要迭代文件迭代器并将字符串传递给函数时,您将把
文件
iteable对象作为参数直接传递给
socket.getaddrinfo
。假设每条线路包含一个IP:

with open('output.txt') as f:
    for ip in f:
        out = socket.getaddrinfo(ip, 0)
        ...
注:

  • 与open…
    上下文管理器一起使用,以在发生错误时自动关闭文件对象,而无需显式调用
    close()

  • 默认情况下,
    open()
    以读取(
    r
    )模式打开一个文件,因此指定
    r
    是多余的,顺便说一句,不会有任何影响