#!/usr/bin/env python # -*- coding: utf-8 -*- import argparse import smtplib FROM = 'myserveradmin@gmail.com' def _main(): parser = argparse.ArgumentParser(description='') parser.add_argument('--to', nargs='+') parser.add_argument('--subject') parser.add_argument('--body-txt', type=file) args = parser.parse_args() domain = 'smtp.gmail.com' port = 465 user = 'myserveradmin@gmail.com' password = 'password' try: server_ssl = smtplib.SMTP_SSL(domain, port) server_ssl.ehlo() server_ssl.login(user, password) to = args.to subject = args.subject or '' text = ''.join(args.body_txt.readlines()).strip() message = '''From: %s\nTo: %s\nSubject: %s\n\n%s ''' % (FROM, ', '.join(to), subject, text) server_ssl.sendmail(FROM, to, message) server_ssl.close() print message print 'Successfully sent the mail' except: print 'Failed to send mail' if __name__ == '__main__': _main()