您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python如何发送带有附件、正文为HTML的邮件

51自学网 2021-10-30 22:54:02
  python
这篇教程python如何发送带有附件、正文为HTML的邮件写得很实用,希望能帮到您。

一、HTML格式怎么发送右键

1.准备HTML代码作为内容

2.把邮件的subtype设置为html

3.发送

4.举个例子:自己发给自己一个HTML格式的文件

from email.mime.text import MIMEText​main_content = """    <!DOCTYPE html>    <html lang = "en"    <head>      <meta charset = "UTF-8">      <title>实例</title>    </head>    <body>      <h1>这个是做测试用的html<h1>    </body>    </html>    """​msg = MIMEText(main_content,"html","utf-8")​#构建发送者地址和登录信息from_addr = "1215217867@qq.com"from_pwd = ""#构建邮件接受者的信息to_addr = "1215217867@qq.com"smtp_srv = "smtp.qq.com"try:  import smtplib  srv = smtplib.SMTP_SSL(smtp_srv.encode(),465)  srv.login(from_addr,from_pwd)  srv.sendmail(from_addr,[to_addr],msg.as_string())  srv.quit()​except Exception as a:  print(a)

二、发送带附件的邮件

1.可以把邮件看作是一个文本邮件和一个附件的合体

2.一封邮件如果涉及多个部分,需要使用MIMEMultipart格式构建

3.添加一个MIMEText正文

4.添加一个 MIMEBase或者MEMEText作为附件

5.举个例子:

from email.mime.text import MIMEText#构建附件使用from email.mime.multipart import MIMEBase,MIMEMultipart#构建基础邮件使用​mail_mul = MIMEMultipart()#构建一个邮件对象mail_text = MIMEText("Hello,I am liudana","plain","utf-8")#构建邮件正文mail_mul.attach(mail_text)#把构建好的邮件正文附加到邮件中#构建附件,需要从本地读入附件#打开一个本地文件#以rb格式打开with open("00.TestCasePython.py","rb") as f:  s = f.read()  #设置附件的MIME和文件名  m = MIMEText(s,"base64","utf-8")#类型是base64,这是邮件正文的格式,这里只需要记住就可以了  m["Content-Type"] = "application/octet-stream"  #需要注意  #1.attachment后分号位英文状态  #2.filename后面需要引号包裹,注意与外面引号错开  m["Content-Disposition"] = "attachment;filename = '00.TestCasePython.py'"  #添加到MIMEMultipart  mail_mul.attach(m)​#构建发送者地址和登录信息from_addr = "1215217867@qq.com"from_pwd = "ysqmojzwkgfciccd"#构建邮件接受者的信息to_addr = "1215217867@qq.com"smtp_srv = "smtp.qq.com"try:  import smtplib  srv = smtplib.SMTP_SSL(smtp_srv.encode(),465)  srv.login(from_addr,from_pwd)  srv.sendmail(from_addr,[to_addr],mail_mul.as_string())  srv.quit()​except Exception as a:  print(a)

三、源码

D55_2_HTMLMailSend.py

D55_3_SendAttachmentMail.py

https://github.com/ruigege66/Python_learning/blob/master/D55_2_HTMLMailSend.py

https://github.com/ruigege66/Python_learning/blob/master/D55_3_SendAttachmentMail.py

以上就是python如何发送带有附件、正文为HTML的邮件的详细内容,更多关于python 发送邮件的资料请关注51zixue.net其它相关文章!


pytorch __init__、forward与__call__的用法小结
python 对xml解析的示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。