Emails versenden

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
icepacker
User
Beiträge: 49
Registriert: Dienstag 15. November 2005, 18:48

Hi
Ich wollte mich auch mal ans Email versenden wagen.
Leider habe ich keinen lokalen SMTP-Server.
Aber theoretisch kann ich mich doch auch direkt mit einem Mail Anbieter (web.de, yahoo.de) verbinden oder?

Also ich habe es jetzt so versucht:
- simplemail

Code: Alles auswählen

from simplemail import Email

email = Email(
        smtp_server = 'smtp.web.de',
        smtp_user = 'xxxxx',
        smtp_password = 'xxxx',

        from_address = 'xxxxxxx',
        to_address = 'xxxxxxx',
        subject = 'foo',
        message = 'bar'
        ).send()
Fehlermeldung:
File "/home/user/simplemail.py", line 526, in send
smtp.login(user = self.smtp_user, password = self.smtp_password)
File "/usr/lib/python2.4/smtplib.py", line 554, in login
raise SMTPException("SMTP AUTH extension not supported by server.")
smtplib.SMTPException: SMTP AUTH extension not supported by server.
-smtp-modul

Code: Alles auswählen

import smtplib
from email.MIMEText import MIMEText

msg = MIMEText('hack')
msg['Subject'] = 'ham'
msg['From'] = 'xxxx'
msg['To'] = 'xxxxx'

s = smtplib.SMTP()
s.connect('smtp.mail.yahoo.de')
s.login('xxxxx', 'xxxxxx')
s.sendmail(msg['From'], msg['To'], msg.as_string())
s.close()
Da gibts dann Fehlermeldungen, wie "socket.error: (111, 'Connection refused')" oder "socket.error: (104, 'Connection reset by peer')".

Was ist da jetzt falsch?
Danke!

lg icepacker
ubuntu linux !!
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

icepacker hat geschrieben:Aber theoretisch kann ich mich doch auch direkt mit einem Mail Anbieter (web.de, yahoo.de) verbinden oder?
Hi icepacker!

Ich habe keine Erfahrung mit web.de oder yahoo.de. Aber, wenn du mit einem normalen Emailprogramm, ohne irgendwelche Verschlüsselungsmechanismen einschalten zu müssen, per SMTP ein Email versenden kannst, dann funktioniert das normalerweise auch mit Python.

Also vorher mit einem Emailprogramm testen.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
icepacker
User
Beiträge: 49
Registriert: Dienstag 15. November 2005, 18:48

Hi
Danke für die Antwort!
Kennst du einen Freemail Anbieter bei dem das bei dir schon geklappt hat?
Oder kennt jemand ein gutes Tutorial, um einen lokalen SMTP-Server
aufzusetzen(Linux)? Aber wenn ich das richtig verstanden habe, muss so ein Programm
wie Postfix dann ja auch wieder auf einen SMTP-Dienst zugreifen :?

lg icepacker

edit: Also mit Thunderbird und smtp.web.de kann ich Emails versenden...
ubuntu linux !!
icepacker
User
Beiträge: 49
Registriert: Dienstag 15. November 2005, 18:48

Hallo
Habt ihr alle noch nie mit Python Emails verschickt oder was?
Schreibt mir doch mal bitte eure Konfiguration mit der es bei euch geklappt hat.
Danke :!:
ubuntu linux !!
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

Der Weg über smtplib hat bei mir einwandfrei funktioniert, lediglich mein Spamfilter war der Meinung, dass ich die Post nich bekommen sollte. Getestet habe ich das ganze bei gmx.de

Bezüglich der Fehlermeldungen "socket.error": das ist auf ganz tiefer Ebene. Das heist afaik, dass nicht mal die TCP-Verbindung aufgebaut werden kann. Überprüfe mal deine Firewalls und versuche mal, per telnet mit deinem mailprovider zu sprechen.

s.connect und s.login geben übrigens einen String zurück, der die Antwort des Mailservers enthält.
Antworten