普通发邮件
1、工具
smtplib
qq
python 2.7.0(PyCharm 4.5.2)
2、打开邮箱-设置-账户-POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启SMTP服务
image.png
3、开启SMTP服务,会收到短信验证码来获取授权码,将授权码在代码里添加
image.png
4、QQ邮箱服务器配置(SSL通用配置)
接收邮件服务器:pop.qq.com,使用SSL,端口号995
发送邮件服务器:smtp.qq.com,使用SSL,端口号465或587
5、源码
# coding=UTF-8
import smtplib
from email.mime.text import MIMEText
msg_Sender = 'XXX@qq.com' #发送方邮箱
msg_code = 'abcabdjdfd' #发送方邮箱的授权码
msg_Receiver = 'XXX@qq.com' #收件人邮箱
subject = "python邮件测试" #主题
content = "这是我使用python smtplib及email模块发送的邮件" #正文
msg = MIMEText(content,_charset="utf-8")
msg['Subject'] = subject
msg['From'] = msg_Sender
msg['To'] = msg_Receiver
try:
s = smtplib.SMTP_SSL("smtp.qq.com",465) #邮件服务器及端口号
s.login(msg_Sender, msg_code)
s.sendmail(msg_Sender, msg_Receiver, msg.as_string())
print u"发送成功"
except s.SMTPException,e:
print u"发送失败"
finally:
s.quit()
带附件邮件
1、源码
# coding=UTF-8
import smtplib
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
msg_Sender = 'XXX@qq.com' #发送方邮箱
msg_code = 'abcabdjdfd' #发送方邮箱的授权码
msg_Receiver = 'XXX@qq.com' #收件人邮箱
subject = "python邮件测试" #主题
content = "这是我使用python smtplib及email模块发送的邮件" #正文
msg = MIMEText(content,_charset="utf-8")
msg = MIMEMultipart()
#pdf附件
pdfFile = 'C:\Users\weepal\Desktop\postman.pdf'
pdfApart = MIMEApplication(open(pdfFile, 'rb').read())
pdfApart.add_header('Content-Disposition', 'attachment', filename=pdfFile)
msg.attach(pdfApart)
#图片附件
imageFile = '1.png'
imageApart = MIMEImage(open(imageFile, 'rb').read(), imageFile.split('.')[-1])
imageApart.add_header('Content-Disposition', 'attachment', filename=imageFile)
msg.attach(imageApart)
msg['Subject'] = subject
msg['From'] = msg_Sender
msg['To'] = msg_Receiver
try:
s = smtplib.SMTP_SSL("smtp.qq.com",465) #邮件服务器及端口号
s.login(msg_Sender, msg_code)
s.sendmail(msg_Sender, msg_Receiver, msg.as_string())
print u"发送成功"
except s.SMTPException,e:
print u"发送失败"
finally:
s.quit()
网友评论