Ich möchte dem Programm folgen, das E-Mails in Python von Anfang an sendet.
Die Umgebung ist Mac und ich benutze PyCharm. Hotmail verwendet Outlook.
import
Zuallererst gibt es eine Sache namens "Nachricht" von "E-Mail", also importiere "smtplib" dort.
smtplib
verwendet den SMTP-Server zum Senden von E-Mails.
from email import message
import smtplib
Ich werde die Einstellungen beim Senden einer E-Mail beschreiben.
Geben Sie den Server an, an den die E-Mail gesendet werden soll. Es gibt eine Hot Mail mit dem Namen "smtp.live.com". Geben Sie sie daher als Host an.
from email import message
import smtplib
smtp_host = 'smtp.live.com'
Beschreiben Sie als Nächstes den Port.
Dieses Mal werden wir 587
verwenden.
from email import message
import smtplib
smtp_host = 'smtp.live.com'
smtp_port = 587
Beschreiben Sie die Adresse des Absenders der Mail. Die E-Mail-Adresse lautet "xxxx @ Outlook.jp", Sie können jedoch Ihre eigene E-Mail-Adresse eingeben.
from email import message
import smtplib
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
Wenn der Absender fertig ist, schreiben Sie die Zieladresse als "to_email".
from email import message
import smtplib
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
Als nächstes schreiben Sie "Benutzername". Da dies der Benutzername des Hot Mail-Kontos ist, wird die E-Mail-Adresse so geschrieben, wie sie ist.
from email import message
import smtplib
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
Geben Sie abschließend das Kontokennwort ein.
from email import message
import smtplib
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
Mit dem obigen Inhalt können Sie die Einstellungen für den Empfänger der E-Mail und die Informationen für die Anmeldung bei der Hot Mail beschreiben.
Verfassen Sie eine Nachricht.
In der zuvor importierten Nachricht befindet sich ein Objekt namens "EmailMessage ()". Verwenden Sie es daher.
from email import message
import smtplib
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
msg = message.EmailMessage()
Ich werde den Inhalt der Nachricht beschreiben.
Geben Sie den Text der E-Mail in ()
mit set_content ()
ein.
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
msg = message.EmailMessage()
msg.set_content('Hallo')
Beschreiben Sie den Betreff, den Absender und das Ziel der E-Mail.
Das Thema ist "Betreff", die Quelle ist "Von" und das Ziel ist "Bis". Verwenden Sie für die Quelle und das Ziel die zuvor beschriebenen Variablen "from_email" und "to_email".
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
Wir werden die Einstellungen zum Senden der oben beschriebenen Nachricht an den Server beschreiben.
Verwenden Sie die von Ihnen importierte SMTP-Klasse von smtplib, um den Server anzugeben. Setzen Sie den Host und den Port in "smtplib.SMTP ()" und "()".
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
#Nachrichteninhalt
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
server = smtplib.SMTP(smtp_host, smtp_port)
Verwenden Sie zum Herstellen einer Verbindung mit SMTP zunächst "server.ehlo ()", um eine Verbindung mit dem SMTP-Server herzustellen. Ich rufe Sie von nun an zum Austausch an.
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
#Nachrichteninhalt
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
server = smtplib.SMTP(smtp_host, smtp_port)
server.ehlo()
Nach dem Schreiben von "server.starttls ()", um es sicher zu machen Versuchen Sie es erneut mit server.ehlo ().
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
#Nachrichteninhalt
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
server = smtplib.SMTP(smtp_host, smtp_port)
server.ehlo()
server.starttls()
server.ehlo()
Als nächstes werden Sie nach Informationen gefragt, um sich per Hot Mail anzumelden Verwenden Sie "server.login ()", um "Benutzername" und "Passwort" in "()" zu schreiben.
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
#Nachrichteninhalt
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
server = smtplib.SMTP(smtp_host, smtp_port)
server.ehlo()
server.starttls()
server.ehlo()
server.login(username,password)
Sobald Sie angemeldet sind, verwenden Sie "send_message ()", um den von Ihnen erstellten Nachrichteninhalt in "()" einzufügen.
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
#Nachrichteninhalt
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
server = smtplib.SMTP(smtp_host, smtp_port)
server.ehlo()
server.starttls()
server.ehlo()
server.login(username,password)
server.send_message(msg)
Ganz am Ende werden wir nicht mehr mit dem Server interagieren, also verwenden Sie server.quit ()
, um ihn zu beenden.
from email import message
import smtplib
#Mail-Einstellungen
smtp_host = 'smtp.live.com'
smtp_port = 587
from_email = '[email protected]'
to_email = '[email protected]'
username = '[email protected]'
password = 'xxxxxxxxxxxx'
#Nachrichteninhalt
msg = message.EmailMessage()
msg.set_content('Hallo')
msg['Subject'] = 'Test email'
msg['From'] = from_email
msg['To'] = to_email
#Interaktion mit dem Server
server = smtplib.SMTP(smtp_host, smtp_port)
server.ehlo()
server.starttls()
server.ehlo()
server.login(username,password)
server.send_message(msg)
server.quit()
Senden Sie sich eine E-Mail mit dem oben genannten Inhalt Wenn Sie es versuchen, können Sie sehen, dass die E-Mail tatsächlich gesendet wurde.
Verknüpfen Sie das Programm, das diese E-Mail sendet, mit anderen Programmen Ich wünschte, ich könnte verschiedene Dinge tun.
Recommended Posts