使用python发邮件,下面是代码,我使用的是88完美邮箱。
该代码是我程序完成,然后它会自动发一封邮件,并且通过sys.argv将程序相关设置写到邮箱里。
下面代码是88邮箱为例:
python
import sys
import smtplib
from email.header import Header
from email.mime.text import MIMEText
# 第三方 SMTP 服务
mail_host = "smtp.88.com" # SMTP服务器
mail_user = "*****" # 用户名
mail_pass = "*****" # 授权密码,非登录密码
# 邮箱设置
sender = 'your_mail_name@88.com' # 发件人邮箱(最好写全, 不然会失败)
receivers = ['***@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
# 邮件内容
content = str(sys.argv[1]) # 邮件内容
title = '程序完成提醒' # 邮件主题
def sendEmail():
message = MIMEText(content, 'plain', 'utf-8') # 内容, 格式, 编码
message['From'] = "{}".format(sender)
message['To'] = ",".join(receivers)
message['Subject'] = title
try:
smtpObj = smtplib.SMTP_SSL(mail_host, 465) # 启用SSL发信, 端口一般是465
smtpObj.login(mail_user, mail_pass) # 登录验证
smtpObj.sendmail(sender, receivers, message.as_string()) # 发送
print("mail has been send successfully.")
except smtplib.SMTPException as e:
print(e)
if __name__ == '__main__':
sendEmail()
下面是邮箱发送成功的截图: