文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python发送带有中文名的附件

2023-01-31 02:19

关注

http://www.meiyear.com/wordpress/archives/97

昨天有一个朋友告诉我,他使用python发送邮件,附件名为乱码
1.他的头部定义是#-*- encoding: utf-8 -*-
2.代码中指定的是GB2312导致了邮件乱码

只要把代码部份中的gb2312改成UTF-8就全部正常
以下为解决部份的代码片段

[python]
#!/usr/bin/env python
#-*- encoding: utf-8 -*-

import smtplib,mimetypes
from email.mime.multipart import MIMEMultipart #多个MIME对象的集合
from email.mime.text import MIMEText #MIME文本对象
from email.mime.p_w_picpath import MIMEImage #MIME二进制文件对象
from email import utils
from email import encoders
from email.header import Header
import os.path
import datetime
import time

sender = ‘dingyangfan@163.com’ #发件人邮箱
smtpserver = ‘smtp.163.com’ #邮件服务器
username = ‘dingyangfan’ #发件人邮箱用户名
password = ‘*****’ #发件人邮箱密码
mailHead = “邮件”
mailBody = “邮件正文”

#收件人列表
tolist = (’8094731@qq.com’, ‘sghsnmh@126.com’)

msgRoot = MIMEMultipart()
attText = MIMEText(mailBody, ‘plain’,'utf-8′)
msgRoot.attach(attText) #添加邮件正文

msgRoot['from'] = sender #发件人
msgRoot['Subject'] = Header(mailHead, ‘utf-8′) #邮件
msgRoot['Date'] = time.ctime(time.time()) #设置时间

#构造附件(附件路径出现中文,会提示编码错误!!!!!!)
rarFilePath = u”解决_ubuntu_安装后字体_发虚_模糊.doc”
att = MIMEText(open(rarFilePath, ‘rb’).read(), ‘base64′, ‘UTF-8′)
att["Content-Type"] = ‘application/octet-stream;name=”%s”‘% Header(rarFilePath,’UTF-8′)
att["Content-Disposition"] = ‘p_w_upload;filename= %s’ % Header(rarFilePath, ‘UTF-8′)
msgRoot.attach(att)

#群发邮件
smtp = smtplib.SMTP(smtpserver, 25)
smtp.login(username, password)
msgRoot['to'] = ’8094731@qq.com’
smtp.sendmail(sender, tolist, msgRoot.as_string())
time.sleep(5) #休眠5秒
smtp.quit() #断开与服务器的连接


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯