Heim Backend-Entwicklung Python-Tutorial python发送邮件示例(支持中文邮件标题)

python发送邮件示例(支持中文邮件标题)

Jun 06, 2016 am 11:29 AM
发送邮件

代码如下:


def sendmail(login={},mail={}):
    '''\
    @param login login['user'] login['passwd']
    @param mail mail['to_addr'] mail['subject'] mail['content'] mail['attach']
    '''
    from datetime import datetime
    from base64 import b64encode
    import smtplib, mimetypes
    from email.mime.text import MIMEText
    from email.mime.multipart import MIMEMultipart
    from email.mime.image import MIMEImage

    user_info = login['user'].split('@')
    mail_configure = {}
    mail_configure['mail_encoding'] = 'utf-8'
    mail_configure['mail_supplier'] = user_info[1]
    mail_configure['from_addr'] = login['user']
    mail_configure['server_host'] = 'smtp.%s' % mail_configure['mail_supplier']
    error = None

    try:
        email = MIMEMultipart()
        email['from'] = mail_configure['from_addr']
        email['to'] = mail['to_addr']
        email['subject'] = '=?%s?B?%s?=' % (mail_configure['mail_encoding'],b64encode(mail['subject']))
        email_content = MIMEText(mail['content'], _charset=mail_configure['mail_encoding'])
        email.attach(email_content)

        if 'attach' in mail:
            for i in mail['attach']:
                ctype, encoding = mimetypes.guess_type(i)
                if ctype is None or not encoding is None:
                    ctype = 'application/octet-stream'
                maintype, subtype = ctype.split('/', 1)
                att = MIMEImage((lambda f: (f.read(), f.close()))(open(i, 'rb'))[0], _subtype = subtype)
                att.add_header('Content-Disposition', 'attachment', filename = i)
                email.attach(att)

        smtp = smtplib.SMTP()
        smtp.connect(mail_configure['server_host'])
        smtp.login(user_info[0], login['passwd'])
        smtp.sendmail(mail_configure['from_addr'], mail['to_addr'], email.as_string())
        smtp.quit()
    except Exception as e:
        error = e

    return (mail_configure['from_addr'], mail['to_addr'], error)

测试

代码如下:


def t21():
    login = {
        'user':'ak43@sina.com',
        'passwd':'hello@d'
    }
    mail = {
        'to_addr':'ak32@sina.com;ak32@21cn.com',
        'subject':'不带附件的测试邮件',
        'content':'''\
        sz002718,友邦吊顶
        sz002719,麦趣尔
        sz002722,金轮股份
        ''',
    }
    print sendmail(login, mail)

    login = {
        'user':'hellot@sina.com',
        'passwd':'hello#world'
    }
    mail = {
        'to_addr':'tom12@sina.com;tom12@21cn.com',
        'subject':'带附件的测试邮件',
        'content':'''\
        sz002718,友邦吊顶
        sz002719,麦趣尔
        sz002722,金轮股份
        ''',
        'attach':['e:/a/a.txt']
    }
    print sendmail(login, mail)

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

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

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)

PHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Benutzer in der MySQL-Datenbank zu senden PHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Benutzer in der MySQL-Datenbank zu senden Aug 05, 2023 pm 06:21 PM

PHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Benutzer in der MySQL-Datenbank zu senden. Einführung: Beim Aufbau des modernen Internets ist E-Mail ein wichtiges Kommunikationswerkzeug. Ob Benutzerregistrierung, Passwort-Zurücksetzung oder Bestellbestätigung im E-Commerce – das Versenden von E-Mails ist eine wesentliche Funktion. In diesem Artikel wird erläutert, wie Sie mit PHPMailer E-Mails senden und die E-Mail-Informationen in der Benutzerinformationstabelle in der MySQL-Datenbank speichern. 1. Installieren Sie die PHPMailer-Bibliothek PHPMailer

PHP-Methoden und -Schritte zum Senden von E-Mails an mehrere Personen mit PHPMailer PHP-Methoden und -Schritte zum Senden von E-Mails an mehrere Personen mit PHPMailer May 22, 2023 pm 06:10 PM

In Webanwendungen ist es oft notwendig, E-Mails an mehrere Empfänger gleichzeitig zu versenden. PHP ist eine sehr beliebte Webentwicklungssprache und PHPMailer ist eine gängige PHP-Klassenbibliothek zum Versenden von E-Mails. PHPMailer bietet eine umfangreiche Benutzeroberfläche, die das Senden von E-Mails in PHP-Anwendungen bequemer und benutzerfreundlicher macht. In diesem Artikel stellen wir die Methoden und Schritte vor, wie Sie mit PHPMailer E-Mails an mehrere Empfänger senden. Um PHPMailer herunterzuladen, müssen Sie zunächst die offizielle Website aufrufen (

So senden Sie E-Mails mit Flask-Mail So senden Sie E-Mails mit Flask-Mail Aug 02, 2023 am 10:17 AM

So verwenden Sie Flask-Mail zum Versenden von E-Mails Mit der Entwicklung des Internets ist E-Mail zu einem wichtigen Kommunikationsmittel für Menschen geworden. Bei der Entwicklung von Webanwendungen müssen wir manchmal in bestimmten Situationen E-Mails senden, z. B. das Senden einer Willkommens-E-Mail, nachdem sich ein Benutzer erfolgreich registriert hat, oder das Senden einer E-Mail zum Zurücksetzen des Passworts, wenn ein Benutzer sein Passwort vergessen hat usw. Flask ist ein einfaches und flexibles Python-Web-Framework und Flask-Mail ist eine Erweiterungsbibliothek zum Senden von E-Mails unter dem Flask-Framework. In diesem Artikel wird erläutert, wie das geht

Python stellt eine Verbindung zur Alibaba Cloud-Schnittstelle her, um die E-Mail-Versandfunktion zu implementieren Python stellt eine Verbindung zur Alibaba Cloud-Schnittstelle her, um die E-Mail-Versandfunktion zu implementieren Jul 05, 2023 pm 04:33 PM

Python stellt eine Verbindung zur Alibaba Cloud-Schnittstelle her, um die E-Mail-Versandfunktion zu implementieren. Alibaba Cloud bietet eine Reihe von Serviceschnittstellen, einschließlich E-Mail-Versanddiensten. Durch die Verbindung zur Alibaba Cloud-Schnittstelle über ein Python-Skript können wir schnell E-Mails versenden. In diesem Artikel erfahren Sie, wie Sie mithilfe von Python-Skripten eine Verbindung zur Alibaba Cloud-Schnittstelle herstellen und die E-Mail-Versandfunktion implementieren. Zunächst müssen wir den E-Mail-Versanddienst in Alibaba Cloud beantragen und die entsprechenden Schnittstelleninformationen erhalten. Wählen Sie in der Alibaba Cloud Management Console den E-Mail-Push-Dienst aus und erstellen Sie eine neue E-Mail

Wie sende ich E-Mails mithilfe der PHP-Warteschlange? Wie sende ich E-Mails mithilfe der PHP-Warteschlange? Sep 13, 2023 am 08:00 AM

Wie sende ich E-Mails mithilfe der PHP-Warteschlange? In der modernen Webentwicklung müssen wir oft große Mengen an E-Mails versenden. Unabhängig davon, ob Sie Massen-E-Mails an eine große Anzahl von Benutzern senden oder personalisierte E-Mails basierend auf dem Benutzerverhalten senden, ist die Verwendung von Warteschlangen zum Senden von E-Mails eine gute Vorgehensweise. Warteschlangen können uns helfen, die Effizienz und Stabilität des E-Mail-Versands zu verbessern, eine übermäßige Serverlast durch das Versenden zu vieler E-Mails zu vermeiden und auch Szenarien zu bewältigen, in denen der Versand fehlschlägt. Bei der PHP-Entwicklung können wir gängige Warteschlangentools wie Rab verwenden

So senden Sie E-Mails mit der PHP-Funktion email() So senden Sie E-Mails mit der PHP-Funktion email() May 22, 2023 pm 03:10 PM

Mit der kontinuierlichen Weiterentwicklung und Popularisierung des Internets ist E-Mail zu einem unverzichtbaren Bestandteil der täglichen Kommunikation der Menschen geworden. Während des Website-Backend-Entwicklungsprozesses ist es häufig erforderlich, PHP zum Senden von E-Mails zu verwenden, um Funktionen wie E-Mail-Benachrichtigungen und Registrierungsüberprüfung zu erfüllen. PHP bietet die Funktion email() zum Senden von E-Mails und ist sehr einfach zu verwenden. In diesem Artikel wird detailliert beschrieben, wie Sie die PHP-Funktion email() zum Senden von E-Mails verwenden. 1. SMTP-Konfiguration Bevor Sie die Funktion email() zum Senden von E-Mails verwenden, muss SMTP konfiguriert werden.

Der vollständige Prozess des E-Mail-Versands mithilfe der PHP-Mail-Funktion Der vollständige Prozess des E-Mail-Versands mithilfe der PHP-Mail-Funktion May 22, 2023 am 08:00 AM

Der gesamte Prozess des E-Mail-Versands mithilfe der Mail-Funktion in PHP Mit der Entwicklung der Internet-Technologie spielt das Senden und Empfangen von E-Mails für Menschen eine immer wichtigere Rolle. Bei der Website-Entwicklung ist es häufig erforderlich, verschiedene Benachrichtigungen, Überprüfungen, Registrierungen usw. per E-Mail durchzuführen. In diesem Artikel wird der gesamte Prozess des E-Mail-Versands mithilfe der Mail-Funktion in PHP vorgestellt. 1. Die Grundform der Mail-Funktion In PHP ist die zum Senden von E-Mails verwendete Funktion mail().

Umfassende Anleitung zum Senden von E-Mails über SMTP mit PHP Umfassende Anleitung zum Senden von E-Mails über SMTP mit PHP May 27, 2023 am 10:10 AM

Mit der Entwicklung des Internets ist E-Mail als wichtiges Kommunikationsmittel aus dem Alltag der Menschen nicht mehr wegzudenken. Das Versenden von E-Mails aus Code ist eine häufige Aufgabe für Webentwickler. PHP bietet die Funktion, E-Mails über SMTP (SimpleMailTransferProtocol) zu versenden. Dieser Artikel bietet Ihnen eine umfassende Anleitung. 1. Einführung in SMTP SMTP ist ein Standardprotokoll zum Senden und Empfangen von E-Mails an Server oder Clients

See all articles