Web自动化【6】——发送邮件(文本,图片,附件)

本文详细介绍了如何使用Python实现自动化邮件发送,包括设置邮件主题、正文及附件。通过实例代码展示了与邮件服务器建立连接的过程,并附有常见错误的解决方案。

本文主要是用python自动化发邮件,其中以后见内容包含邮件主题,邮件正文,以及附件。对于日常使用足够啦~

关于发送邮件常遇到的问题解决,可参考博客:
https://blog.youkuaiyun.com/for_further/article/details/103276962
以上博客,讲解了和服务器建立连接的三种方式以及常见报错解决。

先看一下效果图,如下:
在这里插入图片描述

import smtplib
from email.header import Header
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from smtplib import SMTP

server = 'SMTP.qq.com'
sender = '1*****@qq.com'
pwd = 'xpvwyhxnsrsrbabi'
receiver = '1*****@qq.com'

msg = MIMEMultipart('related')
msg['From'] = Header('测试发件人')
msg['To'] = Header('测试收件人')
msg['Subject'] = Header('带附件邮件')

content = '<p><a>假链接</a></p><p><img src="cid:image1"></p>'
msg1 = MIMEText(content, 'html', 'utf-8')  # 正文

msg2 = MIMEText(open('.//邮件附件.html', 'rb').read(), 'base64', 'utf-8')  # 附件
msg2['content-type'] = 'application/octet-stream'
msg2['content-disposition'] = "attachment; filename ='mail_file.html'"

msg3 = MIMEImage(open('.\\images\\image.png', 'rb').read())  # 图片
msg3.add_header('Content-ID', '<image1>')


msg.attach(msg1)
msg.attach(msg2)
msg.attach(msg3)

sm = SMTP()
sm.connect(server, 25)
sm.login(sender, pwd)
try:
    sm.sendmail(sender, receiver, msg.as_string())
    print("邮件发送成功")
except smtplib.SMTPException:
    print("Error: 无法发送邮件")

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值