基于python语言发送QQ邮件


普通发邮件

1、工具
smtplib
qq
python 2.7.0(PyCharm 4.5.2)
2、打开邮箱-设置-账户-POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启SMTP服务


基于python语言发送QQ邮件_第1张图片
image.png

3、开启SMTP服务,会收到短信验证码来获取授权码,将授权码在代码里添加


基于python语言发送QQ邮件_第2张图片
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 = '[email protected]'                                #发送方邮箱
msg_code = 'abcabdjdfd'                                  #发送方邮箱的授权码
msg_Receiver = '[email protected]'                              #收件人邮箱

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 = '[email protected]'                                #发送方邮箱
msg_code = 'abcabdjdfd'                                  #发送方邮箱的授权码
msg_Receiver = '[email protected]'                              #收件人邮箱

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()

你可能感兴趣的:(基于python语言发送QQ邮件)