Heim Backend-Entwicklung Python-Tutorial Teilen Sie ein Beispiel für die Implementierung von SMTP zum Senden von E-Mails mit Python

Teilen Sie ein Beispiel für die Implementierung von SMTP zum Senden von E-Mails mit Python

May 24, 2017 pm 02:09 PM

Dieser Artikel stellt hauptsächlich ein detailliertes Tutorial zur Implementierung des SMTP-E-Mail-Versands in Python vor, mit dem angehängten SMTP-E-Mail-Versandcode. Interessierte Freunde können sich auf

Einführung

Tutorials zum Versenden von E-Mails in Python Ich habe beim Durchsuchen der Website viele davon durchsucht, aber sie alle sprachen über viele Prinzipien und führten dann den Implementierungscode ein. Als ich den angegebenen Code zum Versenden von E-Mails testete, war dies erfolglos Es hat lange gedauert, bis ich den Grund dafür gefunden habe, dass es an detailliertem Umgebungs-Debugging mangelt. Deshalb werde ich heute ein detailliertes Tutorial bereitstellen, das Schritt für Schritt vom Umgebungs-Debugging bis zur Code-Implementierung reicht Ich habe immer noch Schwierigkeiten, Lösungen zu finden. Ich konnte von niemandem Hilfe bekommen, der das Problem effektiv lösen könnte.

SMTP-Protokoll

Verstehen Sie zunächst SMTP (Simple Mail Transfer Protocol). Der Mail-Transfer-Agent verwendet das SMTP-Protokoll, um E-Mails an den Mailserver des Empfängers zu senden. Das SMTP-Protokoll kann nur zum Senden von E-Mails, nicht zum Empfangen von E-Mails verwendet werden, und die meisten E-Mail-Versandserver verwenden das SMTP-Protokoll. Die Standard-TCP-Portnummer für das SMTP-Protokoll ist 25.

Umgebungs-Debugging

Wie oben erwähnt, wird die E-Mail über das SMTP-Protokoll gesendet. Sie müssen daher zunächst prüfen, ob das SMTP-Protokoll im Postfach Ihres Absenders aktiviert ist Wenn nicht, ist es nicht erforderlich, das 163.com-Postfach als Absender-Mailbox zu verwenden.

1. Melden Sie sich zunächst beim 163.com-Postfach (NetEase-Postfach) an, wie unten gezeigt

2. Wenn Sie in der Funktionsleiste über dem Postfach eine Option „

Einstellungen“ sehen, klicken Sie auf die Option und wählen Sie dann aus. Abwärtsmenü 🎜>"POP3/SMTP/IMAP"

3. Wie im Bild unten gezeigt , die beiden roten Kästchen oben. Wenn es nicht aktiviert ist, können Sie es aktivieren. Dann sehen Sie, dass das rote Kästchen unten ist:

SMTP-Server :smtp.163.com

Implementierungscode

Nach den oben genannten Einstellungen wird die Umgebung debuggt. Der folgende Code kann zum Schreiben des Codes pycharm4.5.3 verwendet werden und Python3.4-Versionstests.

Wenn das Senden erfolgreich ist, wird ok zurückgegeben, andernfalls ist die Ausführung nicht erfolgreich, wie unten gezeigt:

#coding:utf-8  #强制使用utf-8编码格式
import smtplib #加载smtplib模块
from email.mime.text import MIMEText
from email.utils import formataddr
my_sender='发件人邮箱账号' #发件人邮箱账号,为了后面易于维护,所以写成了变量
my_user='收件人邮箱账号' #收件人邮箱账号,为了后面易于维护,所以写成了变量
def mail():
  ret=True
  try:
    msg=MIMEText('填写邮件内容','plain','utf-8')
    msg['From']=formataddr(["发件人邮箱昵称",my_sender])  #括号里的对应发件人邮箱昵称、发件人邮箱账号
    msg['To']=formataddr(["收件人邮箱昵称",my_user])  #括号里的对应收件人邮箱昵称、收件人邮箱账号
    msg['Subject']="主题" #邮件的主题,也可以说是标题

    server=smtplib.SMTP("smtp.xxx.com",25) #发件人邮箱中的SMTP服务器,端口是25
    server.login(my_sender,"发件人邮箱密码")  #括号中对应的是发件人邮箱账号、邮箱密码
    server.sendmail(my_sender,[my_user,],msg.as_string())  #括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
    server.quit()  #这句是关闭连接的意思
  except Exception:  #如果try中的语句没有执行,则会执行下面的ret=False
    ret=False
  return ret

ret=mail()
if ret:
  print("ok") #如果发送成功则会返回ok,稍等20秒左右就可以收到邮件
else:
  print("filed") #如果发送失败则会返回filed
Nach dem Login kopieren

Horizonte erweitern

Obwohl der Code verwendet werden kann, spielen einige Leute zwangsläufig gerne damit herum und knacken den Code beim Spielen, deshalb hier ein paar Wissenspunkte, um Ihre Zweifel auszuräumen.

1. Ich sehe, dass in der ersten Zeile des Codes oben kein „#coding:utf-8“ steht. Ich glaube, dass viele Leute, die diesen Code lesen, dieser Zeile sowieso nicht viel Aufmerksamkeit schenken , es hat nichts mit der Code-Implementierung zu tun. Lassen Sie mich Ihnen sagen, dass diese Codezeile in Python am besten ist, weil sie obligatorisch ist Die Python2-Version erkennt standardmäßig die ASCII-Codierung. Wenn also chinesische Zeichen in Python angezeigt werden, wird sie nicht erkannt. Die angezeigte Fehlermeldung lautet wie folgt:

Fehlermeldung

Beispiel: File"F:/python/s12/pymail.py",line2

SyntaxError:Non-ASCIIcharacter'xe5'infileF:/python/s12 /pymail.pyonline2,butnoencodingdeclared; seehttp://www.python.org/peps/pep-0263.htmlford

etails

Also wenn das oben genannte Wenn eine Codierungsfehlermeldung angezeigt wird, können Sie diese in die erste Zeile der Seite einfügen #coding:utf-8

#Codierung auf utf-8 erzwingen

oder

#coding:GBK

#Force Encoded as GBK

[Verwandte Empfehlungen]

1.

Detaillierte Einführung in Python mit SMTP E-Mails senden


2.

Python-Code-Zusammenfassung zum Senden von E-Mails über SMTP

3.

c# ruft qq Mailbox SMTP auf, um E-Mails mit geändertem Versionscode zu senden

4. Python verwendet SMTP zum Versenden von E-Mails

5. PHP SMTP sendet E-Mails

Detaillierte Erklärung von Python SMTP-E-Mail-Modul

7. Python smtplib-Modul sendet SSL/TLS-sicheres E-Mail-Beispiel

Das obige ist der detaillierte Inhalt vonTeilen Sie ein Beispiel für die Implementierung von SMTP zum Senden von E-Mails mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Kann gegen Code in Windows 8 ausgeführt werden Kann gegen Code in Windows 8 ausgeführt werden Apr 15, 2025 pm 07:24 PM

VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

Ist die VSCODE -Erweiterung bösartig? Ist die VSCODE -Erweiterung bösartig? Apr 15, 2025 pm 07:57 PM

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

So führen Sie Programme in der terminalen VSCODE aus So führen Sie Programme in der terminalen VSCODE aus Apr 15, 2025 pm 06:42 PM

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

Wählen Sie zwischen PHP und Python: Ein Leitfaden Wählen Sie zwischen PHP und Python: Ein Leitfaden Apr 18, 2025 am 12:24 AM

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

PHP und Python: Verschiedene Paradigmen erklärt PHP und Python: Verschiedene Paradigmen erklärt Apr 18, 2025 am 12:26 AM

PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

Kann Visual Studio -Code in Python verwendet werden Kann Visual Studio -Code in Python verwendet werden Apr 15, 2025 pm 08:18 PM

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

Kann VSCODE für MAC verwendet werden Kann VSCODE für MAC verwendet werden Apr 15, 2025 pm 07:36 PM

VS -Code ist auf Mac verfügbar. Es verfügt über leistungsstarke Erweiterungen, GIT -Integration, Terminal und Debugger und bietet auch eine Fülle von Setup -Optionen. Für besonders große Projekte oder hoch berufliche Entwicklung kann VS -Code jedoch Leistung oder funktionale Einschränkungen aufweisen.

Kann vscode ipynb ausführen Kann vscode ipynb ausführen Apr 15, 2025 pm 07:30 PM

Der Schlüssel zum Ausführen von Jupyter -Notebook im VS -Code liegt darin, sicherzustellen, dass die Python -Umgebung ordnungsgemäß konfiguriert ist, verstehen, dass die Codeausführungsreihenfolge mit der Zellreihenfolge übereinstimmt, und sich der großen Dateien oder externen Bibliotheken bewusst zu sein, die die Leistung beeinflussen können. Die vom VS -Code bereitgestellten Codebetausch- und Debugging -Funktionen können die Codierungseffizienz erheblich verbessern und Fehler verringern.

See all articles