python发送带中文附件名的邮件
import smtplibfrom email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
#设置登录及服务器信息
mail_host = 'smtp.163.com'
mail_user = 'USER'
mail_pass = 'PASS'
sender = 'SEND'
receivers = ['recive']
#设置eamil信息
#添加一个MIMEmultipart类,处理正文及附件
message = MIMEMultipart()
message["Accept-Language"] = "zh-CN"
message['From'] = sender
message['To'] = receivers[0]
message['Subject'] = 'title'
#推荐使用html格式的正文内容,这样比较灵活,可以附加图片地址,调整格式等
with open('ce.html','r',encoding='utf-8') as f:
content = f.read()
#设置html格式参数
part1 = MIMEText(content,'html','utf-8')
#添加一个txt文本附件
with open('美国.txt','r')as h:
content2 = h.read()
#设置txt参数
part2 = MIMEText(content2,'plain','utf-8')
#附件设置内容类型,方便起见,设置为二进制流
part2['Content-Type'] = 'application/octet-stream'
#设置附件头,添加文件名
part2.add_header("Content-Disposition", "attachment", filename=("gbk", "", "测试结果.txt"))
#part2['Content-Disposition'] = 'attachment;filename="demo.txt"'
#添加照片附件
with open('无标题2.png','rb')as fp:
picture = MIMEImage(fp.read())
#与txt文件设置相似
picture['Content-Type'] = 'application/octet-stream'
picture['Content-Disposition'] = 'attachment;filename="picture.png"'
#将内容附加到邮件主体中
message.attach(part1)
message.attach(part2)
message.attach(picture)
#登录并发送
try:
smtpObj = smtplib.SMTP()
smtpObj.connect(mail_host,25)
smtpObj.login(mail_user,mail_pass)
smtpObj.sendmail(
sender,receivers,message.as_string())
print('success')
smtpObj.quit()
except smtplib.SMTPException as e:
print('error',e) 感谢分享,帮楼主格式美化一下。
```
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
#设置登录及服务器信息
mail_host = 'smtp.163.com'
mail_user = 'USER'
mail_pass = 'PASS'
sender = 'SEND'
receivers = ['recive']
#设置eamil信息
#添加一个MIMEmultipart类,处理正文及附件
message = MIMEMultipart()
message["Accept-Language"] = "zh-CN"
message['From'] = sender
message['To'] = receivers
message['Subject'] = 'title'
#推荐使用html格式的正文内容,这样比较灵活,可以附加图片地址,调整格式等
with open('ce.html','r',encoding='utf-8') as f:
content = f.read()
#设置html格式参数
part1 = MIMEText(content,'html','utf-8')
#添加一个txt文本附件
with open('美国.txt','r')as h:
content2 = h.read()
#设置txt参数
part2 = MIMEText(content2,'plain','utf-8')
#附件设置内容类型,方便起见,设置为二进制流
part2['Content-Type'] = 'application/octet-stream'
#设置附件头,添加文件名
part2.add_header("Content-Disposition", "attachment", filename=("gbk", "", "测试结果.txt"))
#part2['Content-Disposition'] = 'attachment;filename="demo.txt"'
#添加照片附件
with open('无标题2.png','rb')as fp:
picture = MIMEImage(fp.read())
#与txt文件设置相似
picture['Content-Type'] = 'application/octet-stream'
picture['Content-Disposition'] = 'attachment;filename="picture.png"'
#将内容附加到邮件主体中
message.attach(part1)
message.attach(part2)
message.attach(picture)
#登录并发送
try:
smtpObj = smtplib.SMTP()
smtpObj.connect(mail_host,25)
smtpObj.login(mail_user,mail_pass)
smtpObj.sendmail(
sender,receivers,message.as_string())
print('success')
smtpObj.quit()
except smtplib.SMTPException as e:
print('error',e)
``` vethenc 发表于 2023-7-31 17:16
感谢分享,帮楼主格式美化一下。
```
【懂车帝】 1. 朋友同事一律不能到家里。 2. 不要随便带上司来家里吃饭。 3. 不要让她一个人在家点外卖倒垃圾。 4. 不要随便让邻居进门。 5. 有弟弟的话不要让她一个人在家。 6. 父亲老了让他
你这条签名。看的时候可真费劲
学习了 谢谢分享 学习了,期待更多 这个我当时写了程序有页面的,直接双击.exe就可以运行 感谢分享,学习一下 感谢楼主,真的很方便,替换直接就能使用了{:1_893:}{:1_893:} 我是初入门的该从哪里学啊? 天轩科技 发表于 2023-7-31 19:08
【懂车帝】 1. 朋友同事一律不能到家里。 2. 不要随便带上司来家里吃饭。 3. 不要让她一个人在家点外卖倒 ...
论坛等级对应的签名档大小有限制,系统自动做了节选,原文很长很精彩{:300_966:}
页:
[1]
2