python代码发送邮件

python代码发送邮件

用到的模块为smtplib模块,封装了smtp协议,smtp协议用于邮件客户端发送邮件。具体步骤如下:

发送前准备工作

import smtplib  # 封装了smtp协议的模块
from email.mime.multipart import MIMEMultipart # 处理邮件中的组成部分
from email.mime.text import MIMEText  # 处理邮件文本内容
# 发件人
sp = '[email protected]'
# 授权码,不是密码是授权码
license = 'btlphxxomkbhd'
# 收件人  发多个人['a','b']
rp = '[email protected]'
# 定义服务器,下面用的是qq邮箱。163邮箱用smtp.163.com.
server = 'smtp.qq.com'

定义一个邮件

# 创建一个MIMEMultipart对象,可以往里面添加文字,图片,附件等
# 或者可以理解为一个空邮件,里面没有任何东西 等着我们添加
mm = MIMEMultipart()
# 设置邮件头部内容,也就是邮件主题
head = 'python小康'
# 将发送者添加到mm对象中
mm['From'] = sp
# 将接收者添加mm对象中
mm['To'] = rp
# 将邮件头部内容添加到mm对象中
mm['Subject'] = head

添加正文内容

# 设置正文内容
content = '''
  wo
  tai
  nan
  '''
# 将正文内容处理
text = MIMEText(content)
#将处理好的文本添加到邮件中
mm.attach(text)

添加附件

# 设置附件
att = MIMEText(r'E:\word\计算机\测试报告.doc')#可以加文件或者文件的绝对路径
att['content-type'] = 'application/octet-stream'
att['content-Disposition'] = 'attachment;filename="E:\word\计算机\测试报告.doc"'
#将处理好的附件添加到邮件
mm.attach(att)

正式发送

# 发送邮件步骤
# 创建一个SMTP对象
smtp = smtplib.SMTP_SSL(server,465)#服务器前面已经定义好了,"server = 'smtp.qq.com'",465是服务器的端口号
# 登录服务器
smtp.login(sp,license)
# 发送邮件
smtp.sendmail(sp,rp,mm.as_string())
# 关闭服务器
smtp.close()

QQ邮箱的POP3与SMTP服务器是什么?

QQ邮箱 POP3 和 SMTP 服务器地址设置如下:

邮箱 POP3服务器(端口995) SMTP服务器(端口465或587)
qq.com pop.qq.com smtp.qq.com

网易邮箱的 POP3 与 SMTP 服务器是什么?
各个邮箱 POP3 和 SMTP 服务器地址设置如下:

邮箱 POP3 服务器(端口110) SMTP 服务器(端口25)
188.com pop3.188.com smtp.188.com
163.com pop3.163.com smtp.163.com
126.com pop3.126.com smtp.126.com
netease.com pop.netease.com smtp.netease.com
yeah.net pop.yeah.net smtp.yeah.net

你可能感兴趣的:(Python,#,模块,python)