web-dev-qa-db-fra.com

Lire une liste de noms d'hôtes et résoudre les adresses IP

j'essaie de lire un fichier texte brut et de résoudre chaque adresse IP et (pour l'instant) il suffit de les recracher à l'écran.

import socket

f = open("test.txt")
num_line = sum(1 for line in f)
f.close()

with open("test.txt", "r") as ins:
        array = []
        for line in ins:
                array.append(line)

for i in range(0,num_line):
        x = array[i]
        print x 
        data = socket.gethostbyname_ex(x)
        print data

Actuellement, je reçois ce qui suit:

me@v:/home/# python resolve-list2.py
test.com

Traceback (most recent call last):
  File "resolve-list2.py", line 15, in <module>
    data = socket.gethostbyname_ex(x)
socket.gaierror: [Errno -2] Name or service not known

La recherche sur cette erreur ne semble pas m'aider ... Le fichier texte ne contient qu'une seule ligne pour le moment (test.com) mais j'obtiens la même erreur même avec plusieurs lignes/différents hôtes.

Aucune suggestion?

Merci!

9
proggynewbie
import socket
with open("test.txt", "r") as ins:
    for line in ins:
        print socket.gethostbyname(line.strip())
26
YCFlame