邮件自动发送
---------------邮件发送基本流程
---------------添加邮件附件
---------------发送富文本
---------------发送图片
---------------认识前端
---------------常见的标签
一、邮件发送基本流程
生活中发送邮件的步骤:注册邮箱账号 -> 打开登录邮箱的网站(连接邮箱服务器) -> 输入账号和密码完成登录 -> 构建邮件 -> 发送邮件
# 连接邮箱服务器,登录邮箱和发送邮件的模块
import smtplib
# 导入邮件相关的库
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.text import MIMEText
# 1.准备邮箱账号和授权码
username = '发件人qq邮箱地址'
mandate_code = 'ppormomnsurpbiie'
# 2.连接邮箱服务器('smtp.qq.com') 中间部分由选择的邮箱决定
con = smtplib.SMTP_SSL('smtp.qq.com')
# 3.登录邮箱
con.login(username, mandate_code)
# 4.构建邮件(只影响邮件头部信息的显示)
# 1)创建邮件对象(创建空邮件)
msg = MIMEMultipart()
# 2) 添加邮件主题
header = Header('邮件主题', 'utf-8').encode()
msg['Subject'] = header
# 3)设置发件人显示信息
sender = f'{username}<{username}>'
msg['From'] = sender
# 4)设置收件人信息
receiver = '帅气的客户'
msg['To'] = receiver
# 5)构建邮件正文
content = MIMEText('邮件正文', 'plain', 'utf-8')
msg.attach(content)
# 5,发送邮件
con.sendmail(username, '收件人qq邮箱地址', msg.as_string())
# 6.关闭连接
con.quit()
二、添加文件附件
# 连接邮箱服务器,登录邮箱和发送邮件的模块
import smtplib
# 导入邮件相关的库
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.text import MIMEText
# 1.准备邮箱账号和授权码
username = '发件人qq邮箱地址'
mandate_code = 'ppormomnsurpbiie'
# 2.连接邮箱服务器('smtp.qq.com') 中间部分由选择的邮箱决定
con = smtplib.SMTP_SSL('smtp.qq.com')
# 3.登录邮箱
con.login(username, mandate_code)
# 4.构建邮件(只影响邮件头部信息的显示)
# 1)创建邮件对象(创建空邮件)
msg = MIMEMultipart()
# 2) 添加邮件主题
header = Header('邮件主题', 'utf-8').encode()
msg['Subject'] = header
# 3)设置发件人显示信息
sender = f'{username}<{username}>'
msg['From'] = sender
# 4)设置收件人信息
receiver = '帅气的客户'
msg['To'] = receiver
# 5)构建邮件正文
content = MIMEText('邮件正文', 'plain', 'utf-8')
msg.attach(content)
# 6)添加附件
file1 = open('files/000-Excel安装教程.pdf', 'rb').read()
# base64 - 文件
att1 = MIMEText(file1, 'base64', 'utf-8')
att1['Content-Disposition'] = 'attachment; filename="000-Excel.pdf"' # 注意文件名最好是英文
msg.attach(att1)
file2 = open('files/代码.doc', 'rb').read()
# base64 - 文件
att2 = MIMEText(file2, 'base64', 'utf-8')
att2['Content-Disposition'] = 'attachment; filename="codes.doc"' # 注意文件名最好是英文
msg.attach(att2)
# 5,发送邮件
con.sendmail(username, '收件人qq邮箱地址', msg.as_string())
# 6.关闭连接
con.quit()
三、发送富文本
# 连接邮箱服务器,登录邮箱和发送邮件的模块
import smtplib
# 导入邮件相关的库
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.text import MIMEText
# 1.准备邮箱账号和授权码
username = '发件人qq邮箱地址'
mandate_code = 'ppormomnsurpbiie'
# 2.连接邮箱服务器('smtp.qq.com') 中间部分由选择的邮箱决定
con = smtplib.SMTP_SSL('smtp.qq.com')
# 3.登录邮箱
con.login(username, mandate_code)
# 4.构建邮件(只影响邮件头部信息的显示)
# 1)创建邮件对象(创建空邮件)
msg = MIMEMultipart()
# 2) 添加邮件主题
header = Header('邮件主题', 'utf-8').encode()
msg['Subject'] = header
# 3)设置发件人显示信息
sender = f'{username}<{username}>'
msg['From'] = sender
# 4)设置收件人信息
receiver = '帅气的客户'
msg['To'] = receiver
# 5)构建邮件正文
# html - 富文本(超文本)
# MIMEText(html代码, 'html', 'utf-8')
html = open('files/demo.html', 'r', encoding='utf-8').read()
content = MIMEText(html, 'html', 'utf-8')
msg.attach(content)
# 5,发送邮件
con.sendmail(username, '收件人qq邮箱地址', msg.as_string())
# 6.关闭连接
con.quit()
四、发送图片
# 连接邮箱服务器,登录邮箱和发送邮件的模块
import smtplib
# 导入邮件相关的库
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
# 1.准备邮箱账号和授权码
username = '发件人qq邮箱地址'
mandate_code = 'ppormomnsurpbiie'
# 2.连接邮箱服务器('smtp.qq.com') 中间部分由选择的邮箱决定
con = smtplib.SMTP_SSL('smtp.qq.com')
# 3.登录邮箱
con.login(username, mandate_code)
# 4.构建邮件(只影响邮件头部信息的显示)
# 1)创建邮件对象(创建空邮件)
msg = MIMEMultipart()
# 2) 添加邮件主题
header = Header('邮件主题', 'utf-8').encode()
msg['Subject'] = header
# 3)设置发件人显示信息
sender = f'{username}<{username}>'
msg['From'] = sender
# 4)设置收件人信息
receiver = '帅气的客户'
msg['To'] = receiver
# 5)构建邮件正文
# a.以附件形式发送图片
file1 = open('files/a.png', 'rb').read()
att1 = MIMEText(file1, 'base64','utf-8')
att1['Content-Disposition'] = 'attachment;filename="a.png"'
msg.attach(att1)
# b.以文本形式发送图片
# 创建图片对象并且添加ID值
image_data = open('files/c.jpg', 'rb'). read()
image1 = MIMEImage(image_data)
image1.add_header('Content-ID', '<image1>') # 给图片设置图片ID
msg.attach(image1)
image_data2 = open('files/d.jpg', 'rb'). read()
image2 = MIMEImage(image_data2)
image2.add_header('Content-ID', '<image2>') # 给图片设置图片ID
msg.attach(image2)
# 在html代码中通过img标签的src属性来绑定图片:src = "cid:图片id"
content = MIMEText('图片效果如下:<br><img src="cid:image1"alt=""><br><img src="cid:image2"alt="">', 'html', 'utf-8')
msg.attach(content)
# 5,发送邮件
con.sendmail(username, '收件人qq邮箱地址', msg.as_string())
# 6.关闭连接
con.quit()
五、认识前端
前端三大技术:HTML、CSS、JS
HTML - 给网页提供内容(通过不同的标签来给网页提供不同的功能)
CSS - 负责网页内容的样式和布局
JS - 负责网页内容变化
1. HTML - 给网页提供内容
HTML是通过不同的标签来给网页提供不同的功能的。
1)标签语法
a.双标签:<标签名 属性名1=“属性值1” 属性名2=“属性值2”…>标签内容</标签名>
b.单标签:<标签名 属性名1=“属性值1” 属性名2=“属性值2”…>或者<标签名 属性名1=“属性值1” 属名
2=“属性值2”…/>
2)常用标签
标题标签: h1、h2、h3、h4、h5、h6
段落标签:p
文字相关其他标签:span、b、i
换行标签:br
图片标签:img
超链接:a
按钮标签:button、input
输入框:input
单选、复选按钮:input
六、常见的标签
<!--html版本说明-->
<!DOCTYPE html>
<!--html标签代表整个网页-->
<html lang="en">
<!--头部设置-->
<head>
<meta charset="UTF-8">
<!-- 设置网页标题-->
<title>哈哈网页</title>
<!-- 设置网页图标-->
<link rel="icon" href ="files/c.jpg">
</head>
<body>
<!-- 1.标题标签:h1 ~ h6 (输入后按tab键) -->
<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题</h6>
<!-- 2.段落标签:p (分段) -->
<p>20日晚,“中国文学盛典·鲁迅文学奖之夜”在北京中央歌剧院举行。本次晚会通过电视、网络等媒介形式向社会现场直播,让广大观众、读者和社会各界共同感受文字之美、领略文学之力,共享文学的荣光,感受新时代中国文学百花齐放、多姿多彩的崭新气象。</p>
<p>颁奖典礼上,作品朗诵、情景歌舞、舞剧、合唱等艺术表演形式相继出现,以“文”“艺”联动展示新时代文学欣欣向荣的发展态势,助力文学“破圈传播”。第八届鲁迅文学奖35位获奖者,依次上台领受这一中国文学的崇高荣誉。</p>
<!-- 3.其他文字相关标签:span(一行中隔开)、b(加粗)、i(倾斜) -->
<span>时间:2022-11-21 11:07:30 </span>
<span>来源:中国环境APP </span>
<span>作者:中环报记者王琳琳</span>
<p><b><i>鲁迅文学奖</i></b>共设有<i>中篇小说奖、短篇小说奖、报告文学奖、诗歌奖、散文杂文奖、文学理论评论奖、文学翻译奖</i>7个奖项。今年8月,第八届鲁迅文学奖揭晓,<b>7个奖项共35篇(部)作品获此殊荣</b>。</p>
<!-- 4.特殊的文字符号: (空一个空格)、 (空一个像素)、br(换行)
html代码中的换行和空格都是无效的
-->
<p>
  床前明月光,<br><br>
  疑是地上霜。<br><br>
  举头望明月,<br><br>
  低头思故乡。<br><br>
</p>
<!-- 5.图片标签:img src="网页图片地址" -->
<img src="http://res.cenews.com.cn/data2/1/images/2022/1121/16689965764811704_900x383.jpg">
<!-- 浏览器中显示本地图片 -->
<img src="files/d.jpg" alt="">
<!-- 邮件中显示本地图片 -->
<img src="cid:image1">
<img src="cid:image2">
<!-- 6.超链接:a -->
<a target="_blank" href="https://www.cenews.com.cn/news.html?aid=1019177">鲁迅文学奖</a>
<br><br>
<!-- 7.input标签 -->
<!-- 1)普通文本输入框 -->
<input type="text">
<br><br>
<!-- 2)密码输入框 -->
密 码: <input type="password">
<br><br>
<!-- 3)按钮 -->
      <input type="button" value="登录"> 
  <input type="button" value="注册">
<br><br>
<!-- 4)单选按钮 -->
<input type="radio">男
<br><br>
<input type="radio">女
<br><br>
<!-- 5)复选按钮 -->
<input type="checkbox">记住密码
</body>
</html>