jueves, 17 de diciembre de 2015

Programa en Python para obtener la Ip de una máquina a partir de su hostname

Si, ya se que con el comando "ping" puedes obtener la ip de la máquina, pero ¿y si tuvieras que obtener la ip de miles de máquinas como me ha ocurrido a mi? tardarías un poquito ¿no?

Os dejo el siguiente programa escrito en Python que escribe en un fichero ips.txt las ips de las máquinas que lee del fichero webs.txt. Tarda en ejcutarse unos 5 minutos por cada 1000 nombres de máquina.

import socket

count = 0
fhand=open('webs.txt')
fout=open('ips.txt','w')
for hostname in fhand:
    hostname = hostname.rstrip()
    try:
        ip=socket.gethostbyname(hostname)
    except:
        ip= ""

    fout.write(hostname + " " + ip + "\n")
    count+=1

print 'Registros escritos: ' , count
fout.close()

No hay comentarios:

Publicar un comentario