Seite 1 von 1

Mail senden

Verfasst: Di Jul 15, 2014 11:19 am
von xerion21
Hallo zusammen,

ich habe folgendes Problem:

Ich habe ein Script für meinen Raspberry PI erstellt und möchte gerne, dass dieses Script mir immer eine Mail sendet. Ist an sich ja auch ganz einfach.
Unter Windows funktioniert dies auch problemlos, jedoch unter dem Rasperry PI funktioniert dies nicht. Egal auf welchem SMTP-Server ich mich anmelden möchte.

Code: Alles auswählen

smtp = SMTP('mail.gmx.net', 587)
oder

Code: Alles auswählen

smtp = SMTP('smtp-mail.outlook.com', 587)
Es kommt jeweils dann folgende Fehlermeldung:

Code: Alles auswählen

[Errno -2] Name oder service not known
Hat jemand eine Idee, woran das liegen könnte?

Gruß

Xerion21

Re: Mail senden

Verfasst: Di Jul 15, 2014 11:45 am
von oenone
Müsstest du nicht SSL-verschlüsselte Verbindungen benutzen? Was ist das für eine SMTP-Lib?

Kannst du von der Kommandozeile die Server anpingen?

Re: Mail senden

Verfasst: Di Jul 15, 2014 12:03 pm
von xerion21
hi,
ich habe mien Problem schon gelöst. ;) Irgendwie hat sich mein WLAN-Stick meines PI's verabschiedet, sodass ich keine Domains mehr auflösen konnte. Nach einem Reboot ging dies wieder alles einwandfrei!

Ich erstelle eine verschlüsselte Verbindung über

Code: Alles auswählen

smtp.starttls()
hier noch jemand den ganzen Code, wenn ihn jemand gebrauchen kann (er ist nicht schön geschrieben, da er nur zum Testen war):

Code: Alles auswählen

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText


msg = MIMEMultipart()
msg['Subject'] = "Raspberry PI"
msg['From'] = "xxxxx@gmx.net"
msg['Reply-To'] = "xxxxxx@gmx.net"
msg['To'] = "xxxxxx@outlook.de"
msg.preamble = 'Multipart massage.\n'
part = MIMEText('Mailtext')
msg.attach(part)
try:
    smtp = smtplib.SMTP("mail.gmx.net", 587)
    smtp.ehlo()
    smtp.starttls()
    smtp.login("xxxxx@gmx.net", "xxxxxx")
    smtp.sendmail(msg['From'], msg['To'], msg.as_string())
    msg.set_payload([])
    smtp.close()
    print 'Mail wurde gesendet'
except smtplib.SMTPException, e:
    print 'Mail konnte nicht gesendet werden'
    print e
    msg.set_payload([])

Re: Mail senden

Verfasst: Di Jul 15, 2014 12:58 pm
von Xin
Trotzdem interessant. Kann man für's Tutorial sicherlich gebrauchen.

Re: Mail senden

Verfasst: Di Jul 15, 2014 1:02 pm
von xerion21
Xin hat geschrieben:Trotzdem interessant. Kann man für's Tutorial sicherlich gebrauchen.
Wer macht denn ein Python Tutorial?

Re: Mail senden

Verfasst: Di Jul 15, 2014 1:11 pm
von oenone
Stimmt, gibt ja noch starttls.

Bei solchen Fehlern mit Servern immer einfach mal probieren, ob die Server von Hand zu erreichen sind (ping, telnet, ...).

Re: Mail senden

Verfasst: Di Jul 15, 2014 1:13 pm
von Xin
xerion21 hat geschrieben:
Xin hat geschrieben:Trotzdem interessant. Kann man für's Tutorial sicherlich gebrauchen.
Wer macht denn ein Python Tutorial?
Solche Fragen stelle ich mir nicht mehr. Es läuft soweiso früher oder später auf die gleiche Antwort hinaus. B-/

Re: Mail senden

Verfasst: Di Jul 15, 2014 1:24 pm
von xerion21
Xin hat geschrieben:
xerion21 hat geschrieben:
Xin hat geschrieben:Trotzdem interessant. Kann man für's Tutorial sicherlich gebrauchen.
Wer macht denn ein Python Tutorial?
Solche Fragen stelle ich mir nicht mehr. Es läuft soweiso früher oder später auf die gleiche Antwort hinaus. B-/
hast mal eine PN ;)