Make mail-merge slightly more generic
authorAlex Dehnert <adehnert@mit.edu>
Thu, 28 Apr 2011 05:17:14 +0000 (01:17 -0400)
committerAlex Dehnert <adehnert@mit.edu>
Thu, 28 Apr 2011 05:17:14 +0000 (01:17 -0400)
mail-merge

index 6fc80687049d5caa33b11a4e6723f18d5323ac3c..8ff245976ffcac1b382ee54c3f09506c455e96cc 100755 (executable)
@@ -5,6 +5,8 @@ import os
 import csv
 import smtplib
 
+sender_header = 'mail-merge-sender@mit.edu'
+
 def dictize_line(header, line,):
     line_dict = {}
     for key, elem in zip(header, line, ):
@@ -12,15 +14,17 @@ def dictize_line(header, line,):
     return line_dict
 
 if __name__=='__main__':
+    print "Syntax: $script $cc_addr $template $recipients"
     smtp = smtplib.SMTP()
     smtp.connect()
-    email_file = sys.argv[1]
+    cc_addr = sys.argv[1]
+    email_file = sys.argv[2]
     email = open(email_file, 'r').read()
-    reader = csv.reader(open(sys.argv[2]))
+    reader = csv.reader(open(sys.argv[3]))
     header = reader.next()
     print header
     for line in reader:
         dct = dictize_line(header, line, )
         print dct
         text = email % dct
-        smtp.sendmail('adehnert@mit.edu', [dct['username']+'@mit.edu', 'book-exchange@mit.edu', ], text, )
+        smtp.sendmail(sender_header, [dct['email'], cc_addr, ], text, )