当前位置: 首页 > news >正文

南通网站建设.网站开发的基本流程文库

南通网站建设.,网站开发的基本流程文库,佛山市,移动商城积分兑换发送普通邮件 SMTP(Simple Mail Transfer Protocol)是简单传输协议。 python中对SMTP进行了简单的封装,可以发送纯文本邮件、HTML 邮件以及带附件的邮件。两个核心模块如下: email模块:负责构建邮件 smtplib模块&am…

  发送普通邮件

 SMTP(Simple Mail Transfer Protocol)是简单传输协议。

python中对SMTP进行了简单的封装,可以发送纯文本邮件、HTML 邮件以及带附件的邮件。两个核心模块如下:

email模块:负责构建邮件

smtplib模块:负责发送邮件

常用方法与属性: 

 如果要使用qq邮箱发送的话,需要在qq邮箱设置-账户里面开启POP3/SMTP服务

 首次开启需要你用手机号发送短信,照着做就好了,做完之后会给你一个授权码,记着这个授权码,写代码需要用到,忘记了也可以找回

接着编写代码,发送普通邮件

import smtplib
from email.mime.text import MIMEText
from email.header import Headerdef send_email():# 设置要登录的邮箱smtp_obj = smtplib.SMTP('smtp.qq.com')# 登录邮箱  这里需要填写你的qq邮箱地址和生成的授权码smtp_obj.login('xxx@qq.com','spcdwgqkltjsbiah')# 编辑内容mail_text = 'This is Email~ 您要的邮件来啦~~'# plain 原生文本模式msg_body = MIMEText(mail_text,'plain','utf-8')# 设置从哪发送的msg_body['From'] = Header('xxx','utf-8')  # 设置发送人msg_body['Subject'] = Header('测试Python自动邮件','utf-8')  # 设置内容主题# 发送邮件  这里第一个邮箱填自己的,第二个填收件人的邮箱地址smtp_obj.sendmail('398707160@qq.com','hotelmail@126.com',msg_body.as_string())if __name__ =='__main__':send_email()

发送HTML邮件

 发送HTML邮件只需要把发送的内容换成html代码即可

import smtplib
from email.mime.text import MIMEText
from email.header import Headerdef send_email():# 设置要登录的邮箱smtp_obj = smtplib.SMTP('smtp.qq.com')# 登录邮箱  这里需要填写你的qq邮箱地址和生成的授权码smtp_obj.login('xxx@qq.com','spcdwgqkltjsbiah')# 编辑内容mail_text = '''<h1 style='color:red'>这是一个HTML邮件通知</h1><p>这个是邮件的内容</p><p><a href='http://www.itbaizhan.cn'>这个是链接</a></p>'''# plain 原生文本模式msg_body = MIMEText(mail_text,'plain','utf-8')# 设置从哪发送的msg_body['From'] = Header('xxx','utf-8')  # 设置发送人msg_body['Subject'] = Header('测试Python自动邮件','utf-8')  # 设置内容主题# 发送邮件  这里第一个邮箱填自己的,第二个填收件人的邮箱地址smtp_obj.sendmail('398707160@qq.com','hotelmail@126.com',msg_body.as_string())if __name__ =='__main__':send_email()

发送附件邮件-smtplib

有时邮件的内容只靠文本是无法完全描述内容。这时就可以考虑发 送附件来携带内容。具体方法如下:

设置登录服务器 、登录邮箱、增加附件 、设置请求头、 发送邮件

import smtplib
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from email.header import Headerdef send_file_email():# 设置邮箱服务器stmp_obj = smtplib.SMTP('smtp.qq.com')# 登录邮箱stmp_obj.login('xxx@qq.com','spcdwgqkltjsbiah')# 设置邮件内容# 文本msg_txt = MIMEText('这个带有附件的邮件','plain','utf-8')# 附件  打开你要发送的文件msg_file = MIMEApplication(open('./base_data/backg.jpg','rb').read())msg_file.add_header('Content-Disposition','attachment',filename='bg.jpg')# 封装要发送的数据part = MIMEMultipart()part.attach(msg_txt)part.attach(msg_file)# 设置邮件其它信息part['From'] = Header('xx','utf-8')part['Subject'] = Header('附件邮件','utf-8')# 发送邮件stmp_obj.sendmail('xxx@qq.com','hotelmail@126.com',part.as_string())if __name__ =='__main__':send_file_email()

批量发送邮件-smtplib

这里以发送工资条为例

工资数据如下: 

from email.header import Header
from email.mime.text import MIMEText
import smtplibfrom openpyxl import load_workbookdef send_many_mail():# 设置登录邮箱服务器smtp_obj = smtplib.SMTP('smtp.qq.com')# 登录邮箱smtp_obj.login('xxx@qq.com','spcdwgqkltjsbiah')# 打开excel文件wb = load_workbook('./base_data/工资数据.xlsx',data_only=True)# 激活工作簿sh = wb.active# 读取数据-遍历for i,r in enumerate(sh.iter_rows()):if i != 0:# 编辑内容msg_txt = f'''<h3>您好:{r[1].value}</h3><p>请查收2030年12月工资条详情:</p><table border="1"><tr><td>工号</td><td>姓名</td><td>部门</td><td>基本工资</td><td>提成</td><td>加班工资</td><td>社保扣除</td><td>考勤扣除</td><td>应发工资</td><td>邮箱</td></tr><tr><td>{r[0].value}</td><td>{r[1].value}</td><td>{r[2].value}</td><td>{r[3].value}</td><td>{r[4].value}</td><td>{r[5].value}</td><td>{r[6].value}</td><td>{r[7].value}</td><td>{r[8].value}</td><td>{r[9].value}</td></tr></table>'''msg =  MIMEText(msg_txt,'html','utf-8')# 设置邮件其他信息msg['From'] = Header('财务部','utf-8')msg['Subject'] = Header('工资条','utf-8')#发送邮件smtp_obj.sendmail('xxx@qq.com',{r[9].value},msg.as_string())print(f'{r[1].value} 工资条发送成功!!')
if __name__ =='__main__':send_many_mail()

发送邮件-zmail

 Zmail的优势

1 自动填充大多数导致服务端拒信的头信息(From To LocalHost之类的)

2 将一个字典映射为email,构造信件就像构造字典一样简单

3 自动寻找邮件服务商端口号地址,自动选择合适的协议(经过认证的)

安装:pip install zmail

发送的消息以字典发送,包含的key:

subject 邮件主题

from 发送人

content_text 邮件内容-文本

content_html 邮件内容-HTML

attachments 邮件内容-附件,可写多个 

import zmail
def send_text():# 登录邮箱server = zmail.server('xxx@qq.com','spcdwgqkltjsbiah')# 编写内容info = {'from':'笨笨的张小白','subject':'测试zmail模块','content_text':'这个是zmail邮件信息'}# 发送邮件server.send_mail('hotelmail@126.com',info)
def send_html():# 登录邮箱server = zmail.server('xxx@qq.com','spcdwgqkltjsbiah')# 编写内容info = {'from':笨笨的张小白','subject':'测试zmail模块','content_html':'<h1>这个是zmail邮件信息</h1>'}# 发送邮件server.send_mail('hotelmail@126.com',info)
def send_file():# 登录邮箱server = zmail.server('xxx@qq.com','spcdwgqkltjsbiah')# 编写内容info = {'from':'笨笨的张小白','subject':'测试zmail模块','content_html':'<h1>这个是zmail邮件信息</h1>','attachments':[r'.\base_data\backg.jpg']}# 发送邮件server.send_mail('hotelmail@126.com',info)
def get_email():# 登录邮箱server = zmail.server('xxx@qq.com','tzteewnmyfqacbce')email = server.get_latest()print(email.get('subject'))print(email.get('from'))print(email.get('content_html'))print(email.get('content_text'))if __name__ == '__main__':# send_text()# send_html()# send_file()get_email()

http://www.yayakq.cn/news/72413/

相关文章:

  • 网站建设电话销售模版网站模板切换
  • 科站网站动漫制作专业笔记本电脑推荐
  • 做网站和淘宝美工 最低电脑页面设计自述
  • 建站精灵网站模板多用户软件商城
  • 网站建设该如何学网站建设投资
  • 网站制作 北京网站建设公司连云港建设企业网站
  • 用vs做网站原型移动端开发用什么编程语言
  • 建网站公司哪个比较好用友财务软件
  • 建设银行官方网站手机版下载河北网站建设公司
  • 为什么谷歌网站打不开可视化网站模板
  • 百度广告推广费用360优化大师历史版本
  • 沛县网站建设企业工作正能量励志句子
  • 一小时做网站最流行的网站设计风格
  • 网站交换链接如何实施拼多多怎么开店
  • 微信网站建设新闻电子商务网站加盟
  • 网站免费做链接站点与网站有什么区别
  • 网站建设项目内容网站建设分金手指专业二七
  • 品牌网站建设gs企业如何在工商网站上做公示
  • 建网站怎么起名字佛山外贸网站建设哪家好
  • 深圳电子商务网站建设体验式营销
  • 桥西网站建设口碑好网络营销电话
  • 中英文双语网站 滑动切换校园类网站建设
  • 成全视频免费观看在线看黄金融网站推广圳seo公司
  • 沈阳高端做网站建设招聘网站建设需求
  • 手机怎么制作网站教程勉费申请做网站
  • seo网站策划山西太原百度公司
  • 湛江网站开发哪家专业工作邮箱申请哪个好
  • 宜家设计装修怎么收费江门网站优化公司
  • flash网站建设技术如何自己做网站建设
  • 创意设计网站wordpress js代码放哪