Hier lernen wir, wie man eine einfache Basismail mit Python-Code sendet. Python, eine leistungsstarke Sprache, benötigt keine externe Bibliothek zum Importieren und bietet eine native Bibliothek zum Senden von E-Mails - "SMTP lib". "Smtplib" erstellt ein Client-Sitzungsobjekt des Simple Mail Transfer Protocol, mit dem E-Mails an eine gültige E-Mail-ID im Internet gesendet werden. Unterschiedliche Websites verwenden unterschiedliche Portnummern.
In diesem Artikel verwenden wir ein Google Mail-Konto, um eine E-Mail zu senden. Die hier verwendete Portnummer ist '587'. Wenn Sie E-Mails über eine andere Website als Google Mail senden möchten, müssen Sie die entsprechenden Informationen abrufen.

Schritte zum Senden von E-Mails aus dem Google Mail-Konto:

  1. Zunächst muss die Bibliothek „smtplib“ importiert werden.
  2. Danach verwenden wir zum Erstellen einer Sitzung die Instanz SMTP, um eine SMTP-Verbindung zu kapseln.
    s = smtplib.SMTP ('smtp.gmail.com', 587)

    In diesem Fall müssen Sie den ersten Parameter des Serverstandorts und den zweiten Parameter des zu verwendenden Ports übergeben. Für Google Mail verwenden wir die Portnummer 587.

  3. Versetzen Sie nun aus Sicherheitsgründen die SMTP-Verbindung in den TLS-Modus. TLS (Transport Layer Security) verschlüsselt alle SMTP-Befehle. Danach müssen Sie aus Sicherheits- und Authentifizierungsgründen Ihre Anmeldeinformationen für das Google Mail-Konto in der Anmeldeinstanz übergeben. Der Compiler zeigt einen Authentifizierungsfehler an, wenn Sie eine ungültige E-Mail-ID oder ein ungültiges Kennwort eingeben.
  4. Speichern Sie die Nachricht, die Sie senden müssen, in einer Variablen, z. B. Nachricht. Senden Sie Ihre Nachricht mit der sendmail() -Instanz. sendmail() verwendet drei Parameter: sender_email_id, receive_email_id und message_to_be_sent . Die Parameter müssen in derselben Reihenfolge vorliegen.

Dadurch wird die E-Mail von Ihrem Konto gesendet. Beenden Sie nach Abschluss Ihrer Aufgabe die SMTP-Sitzung mit quit().

import smtplib 
  
s = smtplib.SMTP('smtp.gmail.com', 587) 
  
s.starttls() 
  
s.login("sender_email_id", "sender_email_id_password") 
  
message = "Message_you_need_to_send"
  
s.sendmail("sender_email_id", "receiver_email_id", message) 
  
s.quit() 

Senden derselben Nachricht an mehrere Personen



Wenn Sie dieselbe Nachricht an verschiedene Personen senden müssen. Sie können dafür die for-Schleife verwenden.
Beispielsweise haben Sie eine Liste von E-Mail-IDs, an die Sie dieselbe E-Mail senden müssen. Fügen Sie dazu zwischen der Initialisierung und dem Beenden der SMTP-Sitzung eine for-Schleife ein. Die Schleife wird nacheinander initialisiert und nach dem Senden der E-Mail wird die SMTP-Sitzung beendet.

import smtplib 
  
li = ["xxxxx@gmail.com", "yyyyy@gmail.com"] 
  
for dest in li: 
    s = smtplib.SMTP('smtp.gmail.com', 587) 
    s.starttls() 
    s.login("sender_email_id", "sender_email_id_password") 
    message = "Message_you_need_to_send"
    s.sendmail("sender_email_id", dest, message) 
    s.quit() 

Wichtige Punkte:

  • Dieser Code kann einfache E-Mails senden, die keinen Anhang oder Betreff haben .
  • One of the most amazing things about this code is that we can send any number of emails using this and Gmail mostly put your mail in the primary section. Sent mails would not be detected as Spam generally.
  • File handling can also be used to fetch email id from a file and further used for sending the emails.

Next: Send mail with attachments from your Gmail account using Python

This article is contributed by Rishabh Bansal. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Bitte schreiben Sie Kommentare, wenn Sie etwas Falsches finden oder weitere Informationen zu dem oben diskutierten Thema teilen möchten.