import smtplib from email.mime.text import MIMEText from email.utils import formataddr # 发件人邮箱账号 my_sender = 'xxx@xxx.com' my_pass = '授权码' # 收件人邮箱账号 my_user = ['xx@xxx.com','xxx@xx.com'] def mail(test): try: # 邮件内容 #test="1" msg = MIMEText(test, 'plain', 'utf-8') # 括号里的对应发件人邮箱昵称、发件人邮箱账号 msg['From'] = formataddr([my_sender, my_sender]) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 #msg['To'] = formataddr([my_user, my_user]) msg['To'] = ";".join(my_user) # 邮件的主题 msg['Subject'] = "自动化接口执行结果" # SMTP服务器,腾讯企业邮箱端口是465,腾讯邮箱支持SSL(不强制), 不支持TLS # qq邮箱smtp服务器地址:smtp.qq.com,端口号:456 # 163邮箱smtp服务器地址:smtp.163.com,端口号:25 server = smtplib.SMTP_SSL("smtp.exmail.qq.com", 465) # 登录服务器,括号中对应的是发件人邮箱账号、邮箱密码 server.login(my_sender, my_pass) # 发送邮件,括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件 try: server.sendmail(my_sender, my_user, msg.as_string()) print("1") except Exception as e: print(e) # 关闭连接 server.quit() except Exception as e: print(e)
注意:
msg = MIMEText(test, 'plain', 'utf-8'),这里的test不能是num型数据
拼接字符串的时候也不能直接拼接num型数据,要转成str
test= '自动化接口执行成功,执行批次:' + str(recorid)
参考: