Initial commit
[public/hosts.git] / generate-hosts.py
1 #!/usr/bin/env python
2
3 import sys
4 import socket
5 import re
6 import dns.resolver
7
8 exp = re.compile('([^\.]+)')
9
10 if __name__ == '__main__':
11
12
13    for host in sys.stdin:
14       host = host.replace('\n', '')
15       if host == "" or host[0] == "#":
16           print(host)
17           continue
18
19       if host[0] == '!':
20          print(host[1:])
21          continue
22
23       try:
24          res = dns.resolver.query(host)
25          ip = socket.gethostbyname(str(res.qname))
26
27          print("{0}\t{1} {2}".format(ip, str(res.qname)[:-1], exp.match(host).group(0)))
28       except:
29          sys.stderr.write('Failed to get IP for: {0}\n'.format(host))