Wie kann ich senden E-Mail mit Python?

Ich Schreibe ein Programm, das sendet eine E-Mail mit Python. Was ich gelernt habe aus verschiedenen Foren ist das folgende Stück code:

#!/usr/bin/env python
import smtplib
sender = "[email protected]"
receivers = ["[email protected]"]
yourname = "Abhishek Sagar"
recvname = "receptionist"
sub = "Testing email"
body = "who cares"
message = "From: " + yourname + "\n" 
message = message + "To: " + recvname + "\n"
message = message + "Subject: " + sub + "\n" 
message = message + body
try:
    print "Sending email to " + recvname + "...",
    server = smtplib.SMTP('smtp.gmail.com:587')
    username = '[email protected]'  
    password = '*****'  
    server.ehlo()
    server.starttls()  
    server.login(username,password)  
    server.sendmail(sender, receivers, message)         
    server.quit()
    print "successfully sent!"
except  Exception:
    print "Error: unable to send email"

Aber es ist einfach nur drucken ""Error: unable to send E-Mail" und verlässt sich auf das terminal. Wie könnte ich dies beheben?

Modifizierte ich die letzten beiden Zeilen

except Exception, error:
    print "Unable to send e-mail: '%s'." % str(error)

Bekomme ich die folgende Fehlermeldung :

Traceback (most recent call last):
  File "./2.py", line 45, in <module>
    smtpObj = smtplib.SMTP('localhost')
  File "/usr/lib/python2.6/smtplib.py", line 239, in __init__
    (code, msg) = self.connect(host, port)
  File "/usr/lib/python2.6/smtplib.py", line 295, in connect
    self.sock = self._get_socket(host, port, self.timeout)
  File "/usr/lib/python2.6/smtplib.py", line 273, in _get_socket
    return socket.create_connection((port, host), timeout)
  File "/usr/lib/python2.6/socket.py", line 514, in create_connection
    raise error, msg
socket.error: [Errno 111] Connection refused
Schreibe einen Kommentar