python邮件发送

发布于:2024-05-04 ⋅ 阅读:(34) ⋅ 点赞:(0)

第一种方式

一:发送的邮件要设置授权码,通过邮箱邮箱授权码去验证,让邮件服务器帮我们去转发邮件到要接收的邮件,代码中的授权码,是需要登录126邮箱(我这里是以126邮件发送的,具体的以自己为准),设置授权码(如果之前没设置授权码)

二:发送邮件代码

# 1,导入需要的模块
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr

# 2.定义构建发送邮件内容等相关信息
msg = MIMEText('领导你好,你今天辛苦了', 'html', 'utf-8')  # 发送内容
msg['From'] = formataddr(['陈先生', 'cchaof656@126.com'])  # 发送邮件别名,邮件地址
msg['To'] = '767885930@qq.com'   #接收邮箱地址
msg['Subject'] = '申请涨工资'   # 发送邮件内容主题

# 3.发送邮件
server = smtplib.SMTP_SSL('smtp.126.com')   # 指定发送邮箱的服务器地址
server.login('cchaof656@126.com', 'DDRCWMTRVJNKKKOE')  # 邮箱登录验证:指定发送邮件的地址,授权码
server.sendmail('cchaof656@126.com', '767885930@qq.com', msg.as_string())  # 发送邮件:指定发送邮件,接收邮箱,内容
server.quit()

 三:运行上面的代码,查看接收邮件地址,已经收到邮件了

第二种方式:

一:使用函数,这样更灵活多变,

# 1,导入需要的模块
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr

def send_email(*args):
    # 定义构建发送邮件内容等相关信息
    msg = MIMEText(args[0], 'html', 'utf-8')  # 发送内容
    msg['From'] = args[1]  # 发送邮件地址
    msg['To'] = args[4]   # 接收邮箱地址
    msg['Subject'] = args[-1]   # 发送邮件内容主题

    # 发送邮件
    server = smtplib.SMTP_SSL(args[2])   # 指定发送邮箱的服务器地址
    server.login(args[1], args[3])  # 邮箱登录验证:指定发送邮件的地址,授权码
    server.sendmail(args[1], args[-2], msg.as_string())  # 发送邮件:指定发送邮件,接收邮箱,内容
    server.quit()

mesg = input("请输入发送邮件内容:")
send_mailaddres = input("请输入发送邮箱地址:")
send_mailserver = input("请输入发送邮箱的邮件服务器地址:")
code = input("请输入发送邮箱地址的授权码:")
to_email = input("请输入要接收的邮箱地址:")
subject = input("请输入发送邮件的主题:")

# 调用发送邮件函数
mail_list = [mesg, send_mailaddres, send_mailserver, code, to_email, subject]
send_email(*mail_list)

二:查看接收邮件,已经收到126邮箱发送的邮件信息


网站公告

今日签到

点亮在社区的每一天
去签到