#!/usr/bin/python

# usage: mxlookup -f filename.txt 

import sys, getopt, re, os

def main(argv):
  playlist = "playlist.pls"
  host = "127.0.0.1"

  try:
    opts, args = getopt.getopt(argv, "f:", ["host", "file"])
  except getopt.GetoptError:
    sys.exit(2)

  for opt, arg in opts:
    if opt in ("-f", "--file"):
      filename = arg

  f = open(filename)

  #re_file = re.compile('^File\d+=');
  #re_split = re.compile('=');
  mxPattern = re.compile(r'^\d{2,2}\s+([a-z0-9]+\.[a-z0-9]+\.[a-z0-9]+).$')
  for line in f:
    domain = line.rstrip('\n')
    p = os.popen("dig %s MX  +short" % domain)
    print domain + ',',
    for pline in p:
      m = mxPattern.match(pline)
      if m:
        print m.group(1) + ',',
    print
    p.close

  f.close
if __name__ == "__main__":
  main(sys.argv[1:])
