本文主要是用163邮箱,其他邮箱也类似,把邮箱账号和密码、SMTP服务器和端口换成相应的即可。
# coding:utf-8 import smtplib from email.mime.text import MIMEText from email.utils import formataddr
def sendmail(): smtp='smtp.163.com' # 发件人邮箱中的SMTP服务器 port=25 # 发送邮件的SMTP服务器端口 sender='xx@163.com' # 发件人邮箱 sender_password='xx' # 发件人密码 sender_name='f11' # 发件人邮箱名称 receiver='xx@qq.com' # 收件人邮箱 receiver_name='飞' # 收件人邮箱名称 mail_content='你好' # 邮件内容 mail_subject='主题' # 邮件主题 msg = MIMEText(mail_content, 'plain', 'utf-8') # 邮件内容,plain文本格式,utf-8编码 msg['From'] = formataddr([sender_name, sender]) # 发件人邮箱名称、账号 msg['To'] = formataddr([receiver_name, receiver]) # 收件人邮箱名称、账号 msg['Subject'] = mail_subject # 邮件主题 try: server=smtplib.SMTP(smtp, port) # 发件人邮箱中的SMTP服务器,端口是25 server.login(sender, sender_password) # 发件人邮箱账号、密码 server.sendmail(sender, [receiver,], msg.as_string()) # 发件人邮箱、收件人邮箱、发送邮件 server.quit() # 关闭连接 print("邮件发送成功") except smtplib.SMTPException: print("邮件发送失败")
sendmail()