“Python邮件发送”的版本间的差异

来自CloudWiki
跳转至: 导航搜索
(创建页面,内容为“==发送邮件== Python内置的smtplib提供了一种很方便的途径发送电子邮件,可以发送纯文本邮件、HTML邮件及带附件的邮件。Python…”)
 
第1行: 第1行:
 
==发送邮件==
 
==发送邮件==
 
Python内置的smtplib提供了一种很方便的途径发送电子邮件,可以发送纯文本邮件、HTML邮件及带附件的邮件。Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。
 
Python内置的smtplib提供了一种很方便的途径发送电子邮件,可以发送纯文本邮件、HTML邮件及带附件的邮件。Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。
 +
 +
<nowiki># -*- coding: UTF-8 -*-
 +
 +
import smtplib
 +
from email.mime.text import MIMEText
 +
from email.header import Header
 +
 +
# 第三方 SMTP 服务
 +
mail_host = "smtp.163.com"  # 设置服务器
 +
mail_user = "somezz"  # 用户名
 +
mail_pass = "wqzz2123"  # 口令
 +
 +
 +
sender = "somezz@163.com"
 +
receivers = ["somenzz@qq.com", "zhengzheng@wjrcb.com"]  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
 +
 +
message = MIMEText(
 +
    '<html><body><h1>这是正文标题</h1>\
 +
    <p>正文内容 <a href="#">超链接</a>...</p>\
 +
    </body></html>',
 +
    "html",
 +
    "utf-8",
 +
)  # 构造正文
 +
message["From"] = sender  # 发件人,必须构造,也可以使用Header构造
 +
message["To"] = ";".join(receivers)  # 收件人列表,不是必须的
 +
message["Subject"] = "这是主题:SMTP 邮件测试"
 +
 +
try:
 +
    smtpObj = smtplib.SMTP()
 +
    smtpObj.connect(mail_host, 25)  # 25 为 SMTP 端口号
 +
    smtpObj.login(mail_user, mail_pass)
 +
    smtpObj.sendmail(sender, receivers, message.as_string())
 +
    print("发送成功")
 +
except smtplib.SMTPException as e:
 +
    print(f"发送失败,错误原因:{e}")
 +
</nowiki>

2020年1月19日 (日) 06:54的版本

发送邮件

Python内置的smtplib提供了一种很方便的途径发送电子邮件,可以发送纯文本邮件、HTML邮件及带附件的邮件。Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。

# -*- coding: UTF-8 -*-

import smtplib
from email.mime.text import MIMEText
from email.header import Header

# 第三方 SMTP 服务
mail_host = "smtp.163.com"  # 设置服务器
mail_user = "somezz"  # 用户名
mail_pass = "wqzz2123"  # 口令


sender = "somezz@163.com"
receivers = ["somenzz@qq.com", "zhengzheng@wjrcb.com"]  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱

message = MIMEText(
    '<html><body><h1>这是正文标题</h1>\
    <p>正文内容 <a href="#">超链接</a>...</p>\
    </body></html>',
    "html",
    "utf-8",
)  # 构造正文
message["From"] = sender  # 发件人,必须构造,也可以使用Header构造
message["To"] = ";".join(receivers)  # 收件人列表,不是必须的
message["Subject"] = "这是主题:SMTP 邮件测试"

try:
    smtpObj = smtplib.SMTP()
    smtpObj.connect(mail_host, 25)  # 25 为 SMTP 端口号
    smtpObj.login(mail_user, mail_pass)
    smtpObj.sendmail(sender, receivers, message.as_string())
    print("发送成功")
except smtplib.SMTPException as e:
    print(f"发送失败,错误原因:{e}")